You are on page 1of 61

Step-by-step guide to ALE and IDOCs

By Shankar Reddy Chamala, ITChamps Software

Introduction to EDI and ALE:

EDI (Electronic Document interchange) - EDI is the electronic exchange of business documents between
the computer systems of business partners, using a standard format over a communication network.
EDI is also called paperless exchange.

Advantages:

Reduced Data entry errors


Reduced processing time
Availability of data in electronic form
Reduced paperwork
Reduced Cost
Reduced inventories and better planning
Standard means of communications
Better business process

EDI has two process


1. Outbound process
2. Inbound process

Outbound Process:
1.Application document is created.
2. IDOC is generated
3.Idoc is transferred from SAP to Operating system layer
4.Idoc is converted into EDI standards
5.Edi document is transmitted to the business partner
6.The Edi Subsystem report status to SAP

Inbound Process:
1.EDI transmission received
2.EDI document is converted into an IDOC
3.IDOC is transferred to the SAP layer
4.The application document is created
5.The application document can be viewed.

IDOC:
IDOC is a container that can be used to exchange data between any two processes.

Each IDOC is assigned a unique number for tracking and future reference.

IDOC consists of several segments, and segments contain several fields.

IDOC contains the following three types of records...


1. One Control Record.
2. One or many Data Record
3. One or many Status record.
In IDOCs the following terms are to be known.
PORT:
Port is used in the outbound process to determine the name of the EDI subsystem program, the directory
path where the IDOC file will be created at the operating system level, the IDOC file names and the RFC
destinations.

RFC Destination:
Used to define the characteristics of communication links to a remote system on which a functions needs
to be executed.

Partner Profile:
Partner profile specified the various components used in an outbound process (Partner number, IDOC
type, message type, Port, Process code), the mode in which it communicates with the subsystem (batch
or immediate) and the person to be notified in case of errors.

Message Control
Used in pricing, account determination, material determination, and output determination. The message
control component enables you to encapsulate business rules with out having to write ABAP programs.

TO Process IDOCS the following TCODES will be used.

On both sides:

Logical System Names SALE


Setup RFC destinations SM59
Port Destinations WE21

In Source system:

Segment Creation WE31

Basic IDOC Type Creation WE30

Message Type Creation WE81

Assign Message Type To Basic IDOC Type WE82

Distribution Model BD64

Writing Report Program SE38


Partner Profile WE20
Message control NACE

Check IDOCs WE02, WE05

In Destination System:

Creating FM SE37

Assign FM to Logical Message WE57

Define I/P method for Inbound FM BD51


Create Process Code WE42

Generate Partner Profile BD64

IDOC processing in the same instance of R/3 Clients.

For example two clients in the same R/3 instance.

Client 900.

Client 800.

To transfer the data between two clients the table structures and their data types should be match.

In this example, Client 900 is Source system, and Client 800 is destination system.

In Client 900 I have created a customized table and inserted some records.

In Client 800 I have created only table.

Common Steps in Both Clients:

Creating the Logical System Names and Assigning to Clients:

Go to TCODE SALE.

IMG path IDoc Interface / Application Link Enabling (ALE) -> Basic Settings -> Logical Systems -> Define
Logical System

Click on Display / Change Button


Click on New Entries

Specify the Logical System name and description.

Note: Logical System Naming convention is <SID>CLNT<NNN>


Click on Save and Back buttons

Now you will come back to the IMG path screen. Click on Assign Logical System to client.

Click on Display / Change Button


Click on New Entries

Click on Save and Back.

Click here to continue...

Step-by-step guide to ALE and IDOCs


...Previous

Creating the RFC Connection Names:

Go to TCODE SALE. Direct TCODE SM59


IMG Path IDoc Interface / Application Link Enabling (ALE) -> Communication -> Create RFC
Connections

Click on Create button.

Specify all the details in RFC connection screen

Click on Logon Security tab and specify the details.


Click on the Special options tab and specify the details which you want.

Now click on Test Connection button

It show the connection log in next screen


Click on Back

Click on Remote Logon Button

Depends upon your settings the destination client will open. If you check the Current user option under
Logon/ Security tab, then it will show the screen directly without asking the user name and password
details.
Creating RFC ports:

Go to TCODE WE21

Select the Transactional RFC in left side tree and click on Create button

In dialog box you can select either Generate port name or own port name. If you select Generate Port
name system will generate automatically. Here I selected Own port name. Click on continue.
Specify the description and RFC destination name.

Click on Save.

Repeat the same above process in other client. By using opposite client instead of 900 specify 800.
In Client 900 steps:

Creating table structure:

 Go to TCODE SE11.

 Specify table name as ZSTUDENTS.

 In Delivery and Maintenance tab set attributes as “Display Maintenance Allowed”

 The table fields are.

 Insert some records in table.

Click here to continue...

Step-by-step guide to ALE and IDOCs


...Previous

Creating IDOC Segments:

Go to TCODE WE31.

Specify a name and Click on Create Button.


Here specify all the ZSTUDENTS table fields and their types as shown below.

Click on SAVE button, then it will show dialog box with user name, press continue.
Specify your package name and click on save.

Specify your request and press “Continue”.


Click on Back button, and then you will see the created segment.

Creating Basic IDOC Type:

Go to TCODE WE30

Specify a name to your IDOC and click on create button.


In next dialog box select create new option and specify the description of IDOC and click on continue.

Click on Create segment in the screen.

In dialog box specify the segment name which you created and check mandatory check box.
Click on SAVE and BACK button.

Go to menu EDIT ->Click Set Release

In next dialog box, click on Yes.


Creating Message Type:

Go to TCODE WE81.

Click on Display / Change button.

Click on New Entries button.


Specify a message type name and Description and click on SAVE button.

Click on Back and Save

Step-by-step guide to ALE and IDOCs


...Previous

Assign Message Type to Basic IDOC Type:

Go to TCODE WE82

Click on Display / Change Button


Click on New Entries, Specify the Message Type and Basic IDOC Type and Release version. Click on
Save.

Click on Back.

Note:

 Here the Release version you can find in this way

Creating Model View and Distributing and Generating Partner profile:

Go to TCODE BD64

Click on Display/ Change button


Click on Edit menu -> Model View -> Create

Specify description of model view and technical name in dialog box and press continue.
Select your model view and click on Edit menu -> Add Message type

In dialog box specify the sender, receiver, message type and click on continue.
Now your Model View looks like

Click on Environment Menu -> Generate Partner profile


It will show the following screen, click on execute.

It will show the partner profile log in next screen.


Click on Back button 2 times, it will take back to Distribution Model screen.

Step-by-step guide to ALE and IDOCs


...Previous

Click on Edit Menu -> Model View -> Distribute.


In displayed dialog box select the partner system and click continue

Then it will show the Log of Model View Distribution.


Click on Back button.

To check partner profile Go to TCODE WE20

In displayed screen select the partner system in left side tree under Partner Type LS.

Write a Report Program in SE38 to create IDOC control records and transfer it to destination
partner system.

The following is the program to generate the IDOC control records and process it.

*&---------------------------------------------------------------------*
*& Report ZSHAN_IDOC_STUD
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZSHAN_IDOC_STUD.
TABLES: ZSTUDENTS.
DATA : S_CTRL_REC LIKE EDIDC, "Idoc Control Record
S_ZSHSTUSEG LIKE ZSHSTUSEG. "CUSTOMER Header Data
DATA : T_ZSTUDENTS LIKE ZSTUDENTS OCCURS 0 WITH HEADER LINE.
DATA : T_EDIDD LIKE EDIDD OCCURS 0 WITH HEADER LINE. "Data Records
DATA : T_COMM_IDOC LIKE EDIDC OCCURS 0 WITH HEADER LINE. "Generated
Communication IDOc
CONSTANTS :C_ZSHSTUSEG LIKE EDIDD-SEGNAM VALUE 'ZSHSTUSEG'.
CONSTANTS: C_IDOCTP LIKE EDIDC-IDOCTP VALUE 'ZSHSTUDIDOCS'.
*** Selection Screen
SELECT-OPTIONS : S_STUID FOR ZSTUDENTS-ZSTUID OBLIGATORY.
PARAMETERS : C_MESTYP LIKE EDIDC-MESTYP DEFAULT 'ZSHSTUDMT', "Message Type
C_RCVPRT LIKE EDIDC-RCVPRT DEFAULT 'LS', "Partner type
of receiver
C_LOGSYS LIKE EDIDC-RCVPRN DEFAULT 'IT3CLNT800',
C_RCVPOR LIKE EDIDC-RCVPOR DEFAULT 'PORTSH800',
C_SNDPRN LIKE EDIDC-SNDPRN DEFAULT 'IT3CLNT900',
C_SNDPRT LIKE EDIDC-SNDPRT DEFAULT 'LS'. "Destination
System
***START-OF-SELECTION
START-OF-SELECTION.
PERFORM GENERATE_DATA_RECORDS.
PERFORM GENERATE_CONTROL_RECORD.
PERFORM SEND_IDOC.
*&---------------------------------------------------------------------*
*& Form GENERATE_DATA_RECORDS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM GENERATE_DATA_RECORDS .
SELECT * FROM ZSTUDENTS
INTO TABLE T_ZSTUDENTS
WHERE ZSTUID IN S_STUID.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'No Students Found'.
ENDIF.
PERFORM ARRANGE_DATA_RECORDS.
ENDFORM. " GENERATE_DATA_RECORDS
*&---------------------------------------------------------------------*
*& Form GENERATE_CONTROL_RECORD
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM GENERATE_CONTROL_RECORD .
S_CTRL_REC-RCVPOR = C_RCVPOR. "Receiver Port
S_CTRL_REC-MESTYP = C_MESTYP. "Message type
S_CTRL_REC-IDOCTP = C_IDOCTP. "Basic IDOC type
S_CTRL_REC-RCVPRT = C_RCVPRT. "Partner type of receiver
S_CTRL_REC-RCVPRN = C_LOGSYS. "Partner number of receiver
S_CTRL_REC-SNDPRT = C_SNDPRT. "Sender Partner type
S_CTRL_REC-SNDPRN = C_SNDPRN. "Sender Partner Number
ENDFORM. " GENERATE_CONTROL_RECORD
*&---------------------------------------------------------------------*
*& Form SEND_IDOC
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM SEND_IDOC .
CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'
EXPORTING
MASTER_IDOC_CONTROL = S_CTRL_REC
* OBJ_TYPE = ''
* CHNUM = ''
TABLES
COMMUNICATION_IDOC_CONTROL = T_COMM_IDOC
MASTER_IDOC_DATA = T_EDIDD
EXCEPTIONS
ERROR_IN_IDOC_CONTROL = 1
ERROR_WRITING_IDOC_STATUS = 2
ERROR_IN_IDOC_DATA = 3
SENDING_LOGICAL_SYSTEM_UNKNOWN = 4
OTHERS = 5
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
COMMIT WORK.
LOOP AT T_COMM_IDOC.
WRITE:/ 'IDoc Generated - ', T_COMM_IDOC-DOCNUM.
ENDLOOP.
ENDIF.
ENDFORM. " SEND_IDOC
*&---------------------------------------------------------------------*
*& Form ARRANGE_DATA_RECORDS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM ARRANGE_DATA_RECORDS .
DATA: W_INDEX1 LIKE SY-TABIX,
W_INDEX2 LIKE SY-TABIX.
SORT T_ZSTUDENTS BY ZSTUID.
LOOP AT T_ZSTUDENTS.
S_ZSHSTUSEG-ZSTUID = T_ZSTUDENTS-ZSTUID.
S_ZSHSTUSEG-ZSNAME = T_ZSTUDENTS-ZSNAME.
T_EDIDD-SEGNAM = C_ZSHSTUSEG.
T_EDIDD-SDATA = S_ZSHSTUSEG.
APPEND T_EDIDD.
CLEAR T_EDIDD.
ENDLOOP.
ENDFORM. " ARRANGE_DATA_RECORDS

Now execute the program, and specify the range of records to transfer
Go to TCODE WE02 to check the generated IDOC control records.

Click on Execute
Custom BAPI creation - Step-by-step Procedure
By Venkat

To create the custom BAPI, we need to follow this step-by-step procedure. The steps are

1. Create the BAPI structure.


2. Create Remote Function Module.

3. Place the Remote Function Module into BOR (Business Object Repository).

4. Implement, Generate and Release the BAPI.

Step 1: To create BAPI structure, the structure name should start with the keyword ZBAPI. Here, Two
BAPI structures are created in this scenario .The name of these BAPI structures
areZBAPI_IMPORT and ZBAPI_TABLE.

Step 2: ZBAPI_IMPORT structure contains the following fields.


Step 3: ZBAPI_TABLE structure contains the following fields.

Step 4: Now, define the Remote Enabled Function Module using T-Code SE37 starting with theZBAPI .
Provide the name of the function module as ZBAPI_DEMO_SD. We must pass
the Importand export parameters as value parameters.
Attribute
Parameters:

Import
Parameters:

Export
Parameters:

Return parameter in the Export parameter contains the error messages. Here, we must create a
parameter of type structure BAPIRETURN either in Export Parameter or Table Parameter.
Table
Parameters:

Source
Parameter:

Step5: Place this Function Module in to BOR using the T-code SWO1. Provide the name of the object
and press create button.
Provide the following details.

Custom BAPI creation - Step-by-step Procedure


...Previous

Step 6: Add our Custom BAPI using Utilities->API Method->Add Method


Now, Provide the created Custom Function Module name and click enter.

Press the Next Step Button.

Press the Next Step Button.


Click the YES button.

Now, Method is added in the BOR.

And Press Save button.

Step 7: Now Implement the BAPI.


Now, Generate the BAPI by clicking symbol ‘ball’.

Lastly, Release the BAPI.

Step 8: Now test the BAPI by clicking Execute Button.


The following screen appears and click execute button.

Provide the sales document number and press execute button.

Now check the output as follows…


Working with User-Exits
Enter the transaction VA01.

Go to menu System and select sub item status.

We will get the name of the program as (SAPMV45A).


Now go to SE38 Editor and type the program name as SAPM45A.

And select subobjects - attributes radio button and press Display.


Note the package name. In this case, it is VA

Now go to SMOD Transaction (SMOD is used to find the enhancements and user exits.)
Here if we enter the enhancement name it results the list of user exit names.

But we don’t known the Enhancement name so press the Utilities > Find menu option.
Press Execute .
In the above enhancements our program name SAPMV45A Matches four enhancements.

So, In the below enhancements we have to check the right one.

 V45A0001 - Determine alternative materials for product selection


 V45A0002 - Predefine sold-to party in sales document

 V45A0003 - Collector for customer function module pool MV45A

 V45A0004 - Copy packing proposal into outbound Delivery.

Working with User-Exits


...Previous

My Analysis :

Every Function Module for Enhancement supplies some Import and Export Parameters.

Through which we get some values.

V45A0001 – The Description of this enhancement tell us that it determines the alternative materials for
product selection. (i.e., If one material is not available what is the other material that has to be used as an
alternative. So it is item specific).

FUNCTION EXIT_SAPFV45S_001.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(REQUESTED_DELIVERY_DATE) LIKE VBAK-VDATU
*" VALUE(ENTERED_MATERIAL) LIKE VBAP-MATNR
*" VALUE(REQUESTED_DELIVERY_QUANTITY) LIKE VBAP-KWMENG
*" VALUE(SALES_UNIT) LIKE VBAP-VRKME OPTIONAL
*" VALUE(DELIVERED_QUANTITY) LIKE VBAP-KLMENG OPTIONAL
*" VALUE(DELIVERING_PLANT) LIKE VBAP-WERKS OPTIONAL
*" VALUE(STORAGE_LOCATION) LIKE VBAP-LGORT OPTIONAL

If we observe the Importing parameters

1. There is no way to get VBAK – EBELN (Sales Order No.) and other header data form VBAK.

So, this user exit is not useful.

V45A0002 - By Description we understand that we can predefine sold-to party in the sales document.
(i.e., it is used to populate the field sold-to party through user-exit while entering the data. ) But our
requirement comes after entering the data in the screen and save button is pressed.

FUNCTION EXIT_SAPMV45A_002.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_TVAK) LIKE TVAK STRUCTURE TVAK
*" VALUE(I_TVTA) LIKE TVTA STRUCTURE TVTA
*" VALUE(I_VKGRP) LIKE VBAK-VKGRP
*" VALUE(I_VKBUR) LIKE VBAK-VKBUR

And even the importing parameters are not useful for us.

V45A0004 - Copy packing proposal Into Out bound delivery. This description implies that whenever we
create a Delivery Order from Sales Order it copies the packing proposal Based on the already created
Sales order. So, there is no chance for us to save the data while we create or change a Sales
order.

V45A0003 - Collector for customer function module pool MV45A - This description some what looks good
. But description there is no functionality mentioned. So, let us drill down.

We have 2 exits.

Function module Short Text

EXIT_SAPMV45A_003 Rev.Rec.: Copy Requirements An Header

EXIT_SAPMV45A_004 Rev.Rec.: Field Modification Sales

FUNCTION EXIT_SAPMV45A_004.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_SCREEN_NAME) LIKE FELD-NAME
*" VALUE(I_VBAP) LIKE VBAP STRUCTURE VBAP
*" VALUE(I_VBUP) LIKE VBUPVB STRUCTURE VBUPVB
*" VALUE(I_SCREEN_GROUP4) LIKE FELD-GRP4
*" VALUE(I_T180_AKTYP) LIKE T180-AKTYP

From Exit 004 Description and Importing parameters we can clearly see that this exit is used for Field
modifications.

EXIT_SAPMV45A_003 - From the Description and Importing parameters we get the header data that can
be used for our requirement.

FUNCTION EXIT_SAPMV45A_003.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(XVBAK) LIKE VBAK STRUCTURE VBAK
*" VALUE(XVBUK) LIKE VBUK STRUCTURE VBUK
*" VALUE(XKOMK) LIKE KOMK STRUCTURE KOMK
The purpose of SMOD is to find User Exits.

Once we find the user exits, We go to CMOD. The purpose of the CMOD is to register what we are going
to do in the particular enhancement. So, at the time of up gradation it will be easy to retain the code.

click on Create.

Now in the next screen (see below), click on Save and then on “Enhancement assignments)
Now enter your enhancement name, click on Save and then on “Components”

Now double click on the required function exit


data: gt_exit type zexit,
gs_vbeln TYPE zexit-vbeln,
gs_inr TYPE vbak-netwr,
gs_loc type vbak-waerk value 'INR'.

CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'


EXPORTING
CLIENT = SY-MANDT
date = sy-datum
foreign_amount = xvbak-netwr
foreign_currency = xvbak-waerk
local_currency = gs_loc
RATE = 0
TYPE_OF_RATE = 'M'
READ_TCURR = 'X'
IMPORTING
EXCHANGE_RATE =
FOREIGN_FACTOR =
LOCAL_AMOUNT = gs_inr
LOCAL_FACTOR =
EXCHANGE_RATEX =
FIXED_RATE =
DERIVED_RATE_TYPE =
EXCEPTIONS
NO_RATE_FOUND = 1
OVERFLOW = 2
NO_FACTORS_FOUND = 3
NO_SPREAD_FOUND = 4
DERIVED_2_TIMES = 5
OTHERS = 6
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

if gs_inr > '1000'.


gt_exit-zstatus = 'High Value'.
elseif
gs_inr > '100' and
gs_inr < '1000'.
gt_exit-zstatus = 'Normal Value'.
elseif
gs_inr < '100'.
gt_exit-zstatus = 'Low Value'.
endif.

gt_exit-vbeln = xvbak-vbeln.
gt_exit-vkorg = xvbak-vkorg.
gt_exit-vtweg = xvbak-vtweg.
gt_exit-spart = xvbak-spart.

insert into zexit values gt_exit.


clear gt_exit.

What is SAP Query? Purpose and Advantages of SAP Query?


By Suraj Kumar Pabbathi

SAP Query is SAP’s tool to define and execute once own reports without knowing ABAP programming
language.

Let us see the key topics to explore SAP Query.

Topic # Topic
1 What is Query?

Purpose of Query.

Advantages of Query
2 Infosets/UserGroups/Query in Detail
3 Practical session covering important working models - I
4 Practical session covering important models-II
Various Lists and Background Scheduling

In this document we shall cover Topic#1.

What is SAP query and why do we need queries?

Many times a need arises for SAP Users and Functional Consultants to generate quick reports without
getting any ABAP coding done – time taken to complete the coding in development, transport and test it in
QA system and then transport to production – is sometimes too long. In such cases, SAP query is a tool
provided by SAP for generating these kinds of reports.

Purpose

 The SAP Query application is used to create reports not already contained in the default. It
has been designed for users with little or no knowledge of the SAP programming language
ABAP.
 SAP Query offers users a broad range of ways to define reports and create different types
of reports such as basic lists, statistics, and ranked lists.

 These outputs can include lists on screens in table format, ALV grids, downloadable
spreadsheets, and downloadable flat files. The internal report generator creates an ABAP
program corresponding to the definition of the list.

Features:

The SAP Query comprises five components:

 Queries

 InfoSet Query

 InfoSets

 User Groups
 Translation/Query

Classic reporting- the creation of lists, statistics and ranked lists- are covered by theInfoSet
Query and Queries components. Other components’ range of functions cover the maintenance of
InfoSets, the administration of user groups and also the translation of texts created in the SAP
Query. All data required by a user for a report can be read from various tables.

To define a report, you first have to enter individual texts, such as titles, and select the fields and
options, which determine the report layout. In the WYSIWYG (What You See Is What You Get) mode,
you can edit the lists using Drag & Drop and various toolbars.

Overview:

The following sections describes the individual SAP Query components and provides general information
about query areas, transport and authorizations

Menu Path Used For Transaction


Code
 SAP Query  Queries Maintaining Queries SQ01

 SAP Query  InfoSets Maintaining InfoSets SQ02

 SAP Query  User Groups Maintaining User Groups SQ03

 Translation  Query Language Comparision SQ07

Query Components

The Queries component is used by end users to maintain queries.

You can carry out the following tasks:

 Execute Queries and Generate Lists

 Define Queries

 Change Queries

Infosets Components

 InfoSets are special views of data sources.

 An InfoSet describes which fields of a data source can be reported on in queries.

 InfoSets are assigned to user groups.

 End-users are able to work only with those InfoSets that are relevant to their particular area, as
designated by the role or user group that they are assigned to.
 Eg: Vendor master data can be important in purchasing as well as in accountancy. The relevant
InfoSet is assigned to both roles/user groups. This means that queries based on this InfoSet can
be copied and executed by both groups.

User Groups Components

1. The User Groups component is used to maintain user groups. The system administrator uses it to
set up the work environment for end-users.
2. Every user assigned to the user group is able to execute the query.

3. Users are not allowed to modify queries from other user groups, although they may, under certain
circumstances, copy and execute

Translation/Query Component

 A great deal of text is generated when defining queries, InfoSets, and user groups.

 The SAP Query displays these texts in the language that you chose when you logged on to the
SAP system.

 You can compare the text languages using the component Translation/Query.

 A related text in one or more additional languages is made available for each of the texts created
when defining the query.

Query Areas

A query area contains a set of query objects (queries, InfoSets, and user groups) that are discrete and
consistent.

There are the following query areas:

 Standard area

 Global area

Standard Area

1.Client specific

2.Query objects are not attached to the Workbench Organizer

Advantage :-End users can develop queries (ad-hoc reports) in their own client that are not meant for use
in the rest of the system.

Global Area

1.Cross client

2.Query objects are attached to workbench organizer


Advantage:-The global query area is well suited for centrally developing queries meant for use and
distribution throughout the system.

Authorizations

End-users, system administrators, and translators must all be assigned the appropriate authorizations
allowing them to work with the SAP Query.

In order to give individual users targeted, specific rights, the following options are available:

 Roles/user groups

 Authorizations

Steps to create a Query

Step Description TCODE

1 Create a infoset or functional area SQ02

2 Assignment of user group to infoset SQ03

3 Creation of query based on infoset SQ01

Tools for Queries

The following are the tools to manage, create and change queries.

 Infoset Query

 Queries

 Quick viewer

Dunning using Smartforms


By Raja Babu, Mahindra Satyam

Configure the BTE - Business Transaction Events

Transaction code - FIBF - Maintenance transaction BTE

Click on Settings-->P/S Modules--->...of an SAP Application


Press

Press

Change the Function module name for the selected entry - FI_PRINT_DUNNING_NOTICE to
FI_PRINT_DUNNING_NOTICE_SMARTF as shown below.
Configure the Dunning note Smart Form

Transaction code - FBMP - Maintain Dunning Procedure

Goto Environment --> Company Code Data

Click on and enter the below fields with the below values.

CoCd Company Code

By dun.ar. Check the flag

Ref.CoCode Company Code

Sort.MHNK K1

Sort.MHND P1
Click Save

Create a custom dunning procedure, click on

Dunning using Smartforms


...Previous

Go back and Save . Select


Go back and Save .

Click on . Enter the currency

click
Go back and Save

Configure the Smartforms details

Transaction code - SPRO

Path:

Financial Accounting - Account Receivables and Account Payables - Business Transaction - Interest
Calculation - Print - Define Sender details for Interest Forms

Click on and enter your company code


Enter the below values

Click on

Attach the smartform to the Dunning Procedure

Transaction code - FBMP. Click on dunning procedure '0001'. Click on

Enter the below smartform names to the dunning levels.


Now the dunning can be tested using transaction F150.

You might also like