Download doc - Ale Idoc Interview

Transcript
Page 1: Ale Idoc Interview

ALE /IDOC COMPLETE

Step-by-step guide to ALE and IDOCs

STEP1: Creating the Logical System Names and Assigning to Clients: Go to TCODE SALE.Click on Display / Change Button->Click on New Entries->Specify the Logical System name and description->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.

Step2: Creating the RFC Connection Names: Go to TCODE SALE.  Direct TCODE SM59->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

Step-3: 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-> Step4: Creating IDOC Segments: 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.

Step5: 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.

Step6: 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.

Step7: 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.

Page 2: Ale Idoc Interview

Step8: 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->Click on Environment Menu -> Generate Partner profile  ->It will show the following screen, click on execute.  ->Click on Back button 2 times, it will take back to Distribution Model screen.-> 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.

Step9: To check partner profile: Go to TCODE WE20->In displayed screen select the partner system in left side tree under Partner Type LS.

Step10: Write a Report Program in SE38 to create IDOC control records and transfer it to destination partner system->Send Idoc Call function

CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE' EXPORTING MASTER_IDOC_CONTROL = S_CTRL_REC(EDDIC)* OBJ_TYPE = ''* CHNUM = '' TABLES COMMUNICATION_IDOC_CONTROL = T_COMM_IDOC(EDIDC) MASTER_IDOC_DATA = T_EDIDD(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_IDO

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  

Page 3: Ale Idoc Interview

In Client 800 Steps: 

Step11: Function Module Creation: Create a Function Module to update the table from the IDOC segments->Go to SE37->Specify a name and click on create->In dialog box specify function group and description, and click on save.-> Specify the Import parameters in Import tab->Specify the Export parameters in Export tab->Specify the Table parameters in Tables tab->Specify the Exceptions in Exception tab  ->Click on Source code Tab. ->

FUNCTION ZSHAN_IDOC_ZSHSTUDMT.*"--------------------------------------------------------------------*"*"Local Interface:*" IMPORTING*" REFERENCE(INPUT_METHOD) LIKE BDWFAP_PAR-INPUTMETHD*" REFERENCE(MASS_PROCESSING) LIKE BDWFAP_PAR-MASS_PROC*" EXPORTING*" REFERENCE(WORKFLOW_RESULT) LIKE BDWF_PARAM-RESULT*" REFERENCE(APPLICATION_VARIABLE) LIKE BDWF_PARAM-APPL_VAR*" REFERENCE(IN_UPDATE_TASK) LIKE BDWFAP_PAR-UPDATETASK*" REFERENCE(CALL_TRANSACTION_DONE) LIKE BDWFAP_PAR-CALLTRANS*" TABLES*" IDOC_CONTRL STRUCTURE EDIDC*" IDOC_DATA STRUCTURE EDIDD*" IDOC_STATUS STRUCTURE BDIDOCSTAT*" RETURN_VARIABLES STRUCTURE BDWFRETVAR*" SERIALIZATION_INFO STRUCTURE BDI_SER*" EXCEPTIONS*" WRONG_FUNCTION_CALLED*"--------------------------------------------------------------------

Click on Save and Activate.

Step12: Assign FM to Logical Message: Go to TCODE WE57->Click on Display / Change button. ->Click on New Entries Button->Specify created FM name, Function Type, Basic Type (IDOC), Message Type, and Direction and click on SAVE button.-> Click on Back button

Step13: Define Input Method for Inbound Function Module: Go to TCODE BD51->Click on Display / Change button->Click on New Entries->Specify FM name and Input Types as 2. And Click on Save and Back buttons.

Step14: Creating Process Code: Go to TCODE WE42->Click on Display / Change Button   ->Click on New Entries button ->Specify a process code name, Description and select the options processing with ALE services, Processing by Function Module.   ->Click on save button->In next screen select the FM name and click on SAVE button and Click on BACK button.  ->It will take to you previous screen. Double Click on Logical Message in left side tree. ->Click on Display / Change button->Click on New Entries button ->Specify the Message Type and Click on Save button  ->Click on Back button  

Step15: Generating the Partner Profile->Go to TCODE BD64.-> Select the Model View which you distributed in client 900.-> Click on Environment Menu -> Generate Partner Profile  ->It will show the next screen, in that click on Execute button->It will show the Partner Profile details   ->To check the partner profile details. Go to TCODE WE20. Select the partner system name.  

Page 4: Ale Idoc Interview

Step16: Transferring the IDOC control records from Client 900 to 800: In source system, go to TCODE SE38. (In client 900)-> Execute the Report program which you created.  

Step17: Check in Destination System: (Here client 800): Go to TCODE WE02-Check in ZSTUDENTS table in SE11.  

LOGICAL SYSTEM:

A Logical System (LS) is the representation of an R/3 or external system in SAP R/3 for the distribution of data to and from the R/3 System.An entry for the logical system is created in the table TBDLS.

IDOC TYPE: An IDoc type defines the syntax of the IDoc data. It tells which segments are found in an IDoc and what fields the segments is made up of.

MESSAGE TYPE:

Message represents a specific type of document that is transmitted between two partners. The message type defines the semantic context of an IDoc. Message type is a grouping of IDOC types belonging to similar application. The same IDoc data can be sent under different message types. DISTRIBUTION MODEL

The Distribution model (also referred to as ALE-Scenario) is a more or less graphical approach to define the relationship between the participating senders and receivers.

The distribution model is shared between all participating partnersFILTER OBJECT TYPE AND FILTER OBJECTS:

A filter object type is used in the Customer Distribution Model to impose a selection criterion on the message (type) flowing to a Logical System.

SEGMENT FILTERING:

In segment filtering segments of a particular type are completely removed from the IDoc.

The segments to be filtered out are determined at runtime as per the settings, and unwanted segments are removed before the communication IDoc is created.

CHANGE POINTERS:

Basically after the master data is distributed to the other system, if it undergoes a change in the sending system, the change needs to be re-distributed to the receiving system. Change pointer is a technique that enables only the changed data to be redistributed.

CD objects record the changes occurring to master data at a field level. These changes are stored in tables CDHDR (header table) and CDPOS (detail table).

PORTS:

A port is a logical name for an input/output device. It defines the medium in which documents are transferred to the destination system. A program talks to a port, which

Page 5: Ale Idoc Interview

is presented to it with a common standard interface. The port takes care of the translation between the standard interface format and the device dependent format.

There are four types of ports that can be defined in R/3,

1>tRFC 2>file 3> R/2 4>XML Declaring the port is done by transaction WE21.

ALE: ALE supports the distribution of the business functions and process across loosely coupled R/3 systems. Connections from R/2 and non SAP systems is also supported.

IDOC: IDOC is simply a data container used to exchange information between any two processes that can understand the syntax and semantics of the data.

• In the SAP System, IDOCs are stored in database.• Every IDOC has an unique number(within a client).• IDOCs are independent of the direction of data exchange• At run time the following events occur

• A unique IDOC no. is allocated by SAP• One control record is attached to the IDOC• Segments translate into data records• Status records are attached

Syntax rules are checked.• Each IDOC has 3 parts

– Control Record– Data Record– Status Record

• Control Record– All control record data is stored in EDIDC table. The key to this table

is the IDOC Number– It contains information like IDOC number,the direction(inbound/outbound),

sender, recipient information, channel it is using, which port it is using etc.

– Direction ‘1’ indicates outbound, ‘2’ indicates inbound. Data Record

– Data record contains application data like employee header info, weekly details, client details etc

– All data record data is stored in EDID2 to EDID4 tables and EDIDD is a structure where you can see its components.

– It contains data like the idoc number, name and number of the segment in the idoc, the hierarchy and the data

– The actual data is stored as a string in a field called SDATA, which is a 1000 char long field.

• Status Record – Status record are attached to an IDOC at every milestone or when it

encounter errors.– All status record data is stored in EDIDS table.– Statuses 1-42 for outbound, 50-75 for inbound

Basic IDOC Type (we30)• Basic IDOC Type defines the structure and format of the business document that

is to be exchanged.• IDOC Type has a

– specific name– list of permitted segments– hierarchy of segments– mandatory/optional segments– minimum/maximum range of each segment.

Segments

Page 6: Ale Idoc Interview

• Segment defines the format and structure of a data record. Segments are reusable components.

EXTENDING AN EXISTING IDOC TYPE

• Used in cases where some additional information is required in addition to that supplied by the Standard IDOC Type.

• In Transaction WE30 we create the IDOC type as an Extension and specify the basic type for which it is an extension.

• We add the segments needed as children to existing ones.• None of the Reference Segments can be deleted or changed.

MESSAGE TYPES• A message represents a specific type of document that is transmitted between two

partners eg. Orders,orders responses,invoices etc• An idoc type can be associated with many message types • Also a message type can be associated with different idoc types

PARTNER PROFILE• A partner is defined as a business partner with whom you conduct business and

exchange documents• The concept of partner profile is quite similar• In the partner profile of a partner that we exchange Idocs with, we maintain the

parameters that are necessary for exchanging the data.The transaction used is We20. We will look at this again while dealing with outbound and inbound processes

PORT: The port defines the technical characteristics of the connection between SAP and the subsystem. The port defines the medium in which data is exchanged between the 2 systems. There are different types of ports. The 2 most commonly used are the TRFC ports used in ALE(will discuss this later) and File ports which EDI uses. For TRFC ports we have to give the name of the logical destination created using SM59.We will explain this in detail later. When using file port you can specify the directory where the idoc file should be placed. The subsystem or the middleware will pick up the file from here. The Function module can be used to generate a file name for the idoc. Whie testing you can use “Outbound file” to specify a constant file name. The tab “outbound trigger” can be used to supply information if we want to trigger some processing on the subsystem when an idoc is created at this location. We have to specify the command file name and the directory which has to be run(WE21)

• What is Process Code ?Process of filling the IDOC with application data is done by Function Module.

But, function module is not assigned to a Partner. It is encapsulated by a Process Code and this Process Code is assigned to a Partner in Partner Profile.

• Assigning Function Module to Process Code - Go to Transaction WE41.- Switch to “Change” Mode and click “New Entries”.- Enter Process Code Name and assign the Function Module created.- In the view VEDI_TMSG1 associate the process code and the message type to

get F4 help in the partner profile Outbound process codes are stored in table TEDE1, while inbound process codes are stored in TEDE2.

Note: Link between a process code and its corresponding function module can be seen by transaction WE41 for outbound Process code and WE42 for Inbound Process code

Page 7: Ale Idoc Interview

Creating Partner Profile (WE20)• Partner Profile

We must maintain the business partners with whom we communicate via IDocs, in Partner Profiles.

• Steps to create Partner Profile- Goto Transaction WE20.- Click on Create Button.- Enter the Partner Number and partner type. - Save the Data.- For Outbound Partner Profile we have to create Outbound Parameters. Press the “add entry” button under outbound parameters.- Specify Partner Function, Message type created, Port (create a port in WE21),Basic Type and Output Mode.- If using message control, goto “Message Control” Tab and link the Message

Type and Process Code created.- Save.

MESSAGE CONTROL:

Message control is a cross-application technology used in pricing, account determination, material determination, and output determination. The output determination technique of message control triggers the ALE and EDI outputs for a business document. Message control separates the logic of generating IDocs from the application logic. Message control is used to determine the timing and the medium of the output at run time. Various business rules can be encapsulated in the message control to meet the business needs.

Use transaction NACE for setting up message control

CONVERSION RULES:

In a distributed environment, the data format in different systems may be maintained in different standards. Conversion rules helps in sending the data in required format with help of conversion rules such as:

Copy sender fields

Set constant

Set variable

Convert sender fields etc.

Use general rules

Values can be converted to the required format with the help of rules given above.

Triggering the idoc through message control– Create/change the application data. Eg.Change Purchase Order Created

using transaction ME22n for the Vendor to which partner profile has been created.

Page 8: Ale Idoc Interview

– Goto “Messages” , add the new “Message Type” to the list and Save the document.

– An IDOC will be created and will be dispatched to PORT mentioned.(either immediately or when RSEOUT00 is run depending on the output mode).

The IDOC status can checked using transaction WE02/WE05If the status is ’03’ , it implies that IDOC is passed to Port.

IDOC VIEW: An IDOC type can be used for more than one message type, which results in IDOCs containing more fields than required for a particular message type.IDOC views are used to improve performance in generating IDOCs to ensure only the relevant segments are filled with data.IDOC Views are important only for Outbound Processing.

SIMILARITIES INBOUND AND OUT BOUND:• The basic Idoc type • Partner profile• Message type• Idoc type – Message type association• Process code(WE 42 not WE41)• Creation of a function module/program

The Inbound Process

• Creation of basic Idoc type (Transaction we30)• Creating message type (Transaction we81)• Associating the Message type to basic Idoc type (Transaction we82)• Create the function module for processing the idoc • Define the function module characteristics (BD51)• Allocate the inbound function module to the message type(WE57)• Defining process code (Transaction we42)• Creation of partner profile (Transaction we20)• The inbound process code is the process that needs to be triggered in order to

post the idoc that is sent by the subsystem.• The steps in developing a process code

• Develop a function module• Define inbound characteristics of the function module – bd51• Assign idoc type and message type – we57• Define the process code – we42

SETTINGS REQUIRED FOR INBOUND PROCESS: (using Function Module)

The settings required for inbound IDoc processing depends on whether a new process code is defined or a SAP defined process code is used.

In case SAP defined process code is used then execute Step 5 else follow the stepwise procedure given below:

Attach function module created for IDoc processing to IDoc type Transaction WE57

Maintain function modules (inbound) Transaction BD51

Page 9: Ale Idoc Interview

Create new Process code Transaction WE42

Attach Process code to function module Transaction BD67

Generate Partner Profile Transaction WE20

1.Attach function module created for IDoc processing to IDoc type

Go to transaction WE57 and attach the function module to the IDoc type and message type.

2.Maintain function modules (inbound)

Add the function module. ”INPUT T” specifies how the IDocs are to be processed.

2 stand for IDoc type to be processed individually.

3.Attach Process code to function module

Go to transaction WE42 and create a new process code. The processing type is Process by function module as we have specified the function module name.

4.Attach process code to function module

5.Generate Partner profile

1) Go to Transaction WE20 of the receiving system.

2) Select the relevant Partner profile (Assuming it has already been created)

3) Go to the Inbound Parameters, Select the required message type and Double click on the same.

Enter the process code that is attached to the function module and save it.PROGRAMS FOR CUSTOM IDOCS

IDoc is basically a data container and do not transfer data from one system to another.

For ensuring this, programming in the IDoc interface needs to be done.

Programs are written for:

Page 10: Ale Idoc Interview

Custom-developed Extended IDoc Enhancements

Basic IDoc type.

Each of the programs can be further divided as follows

OUTBOUND INBOUND

PROGRAMS PROGRAMS

Outbound program is a Inbound program Written to populate IDocs are used to read IDoc

data and post the

application document

from it.

1. Custom-developed Basic IDoc type.A. OUTBOUND PROGRAMS

Based on the type of triggering mechanism in ALE, the basic Programming can be divided into:

Stand alone programs (Programs for Master data). Programs for change pointers (For change master data). Programs for transactional data.

B. INBOUND PROGRAMS Posting programs (read data from IDocs and updates the

database).

2. Extended IDocPrograms (Outbound and Inbound) are written in user exits for extended

IDocs.

1.A.1 STAND ALONE PROGRAMS (PROGRAMS FOR MASTER DATA)

Page 11: Ale Idoc Interview

ALE processes for distributing master data are implemented as stand-alone programs. For example, RBDSEMAT (Transaction code BD10) is a SAP standard report program to generate material master IDocs.

STEP-WISE PROCEDURE

The Stand alone program consist of following steps:

1.The selection screen allows user to select one or more object, a receiving system and the message type for which the selection screen is to be generated. For example, selection screen for material master generation.

2. Determine the key of the application document (in case of Material master the key object is Material (MATNR).

3.Select the application data from the database using the key object.

4.Populate the control record information. The data is populated in structure of the type EDIDC. It consists of control information such as receiver port, logical system and message type.

5.Populate data in internal table of type EDIDD with data records for the various segments.

6.Call function module ‘MASTER_IDOC_DISTRIBUTE’ to generate IDocs.

7.Commit work.

CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'

EXPORTING

master_idoc_control = st_edidc

* OBJ_TYPE = ''

* CHNUM = ''

TABLES

communication_idoc_control = it_idoc_num

master_idoc_data = it_edidd

EXCEPTIONS

error_in_idoc_control = 1

error_writing_idoc_status = 2

Page 12: Ale Idoc Interview

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 it_idoc_num.

WRITE :/ it_idoc_num-docnum INPUT ON.

ENDLOOP.

ENDIF.

PROGRAMS FOR CHANGE POINTERS (FOR CHANGE MASTER DATA)

STEP-WISE PROCEDURE:

The program logic contains:

1.Read the change pointers using function module CHANGE_POINTERS_READ.

2.Analyse change pointers to determine which documents are valid.

3. Determine the key of the application document (in case of Material master the key object is Material (MATNR).

4.Select the application data from the database using the key object.

5.Populate the control record information. The data is populated in structure of the type EDIDC. It consists of control information such as receiver port, logical system and message type.

Page 13: Ale Idoc Interview

6.Populate data in internal table of type EDIDD with data records for the various segments.

7.Call function module ‘MASTER_IDOC_DISTRIBUTE’ to generate IDocs.

8.Update change pointer status with the help of function module ‘CHANGE_POINTERS_STATUS_WRITE’.

9. Commit work.

CALL FUNCTION 'CHANGE_POINTERS_READ'

EXPORTING

* ACTIVATION_DATE_HIGH = ' '

* ACTIVATION_DATE_LOW = ' '

* ACTIVATION_TIME_HIGH = '000000'

* ACTIVATION_TIME_LOW = '000000'

* CHANGE_DOCUMENT_OBJECT_CLASS = ' '

* CREATION_DATE_HIGH = ' '

* CREATION_DATE_LOW = ' '

* CREATION_TIME_HIGH = '000000'

* CREATION_TIME_LOW = '000000'

message_type = message_type

read_not_processed_pointers = 'X'

TABLES

change_pointers = it_chgptrs

* MESSAGE_TYPES =

EXCEPTIONS

error_in_date_interval = 1

error_in_time_interval = 2

OTHERS = 3

.

Page 14: Ale Idoc Interview

IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

PROGRAMS FOR TRANSACTIONAL DATA

STEP-WISE PROCEDURE:

1. Copy the incoming control record information to the outgoing control record.

2.Populate the remaining fields in the outgoing control records.

3.Select application data from the database with the help of object key passed in NAST

record.

4.Populate the internal table with data.

5.Return control to the calling program.

6.Create a process code for the function module (Transaction WE41).

Program flow in case of posting program involves:

1.Read the control record information and verify it. Raise exception in case of incorrect message types,

2.Read the IDoc data for and IDoc from the IDoc_data parameter.

3.Populate the internal table depending upon call transaction or direct input.

4.Call the posting program and capture the results

5.Populate return parameters

6.Return from the function module. The results of the execution are passed to the ale layer.

7.Attach the function module to the IDoc type and the message type in transaction WE57

8.Select the posting method that is used in the function module by transaction BD51

9.Create a new Inbound Process code for the function module with transaction WE42

10.Attach the inbound process code; function module and the Workflow Object, which is used for error handling in the case of error, occurred in the posting of application documents using transaction BD67

STEP-WISE PROCEDURE:

Page 15: Ale Idoc Interview

The program logic contains the following blocks:

1.Determine the key of the object for which an IDoc is being generated. IF you are writing the user-exit for an extended segment in a customer master, you want to know which master is being processed. If the key is not available through one of the interface parameters, you can loop through the existing segments that are filled to locate the key.

2. Write the logic to extract data from master table.

3. Create data records for the custom segments.

4.Append it to the internal table of the data records supplied in the parameters.

POSTING PROGRAMS

1>how do we debug an idoc ?Ans. using function module idoc_outbound_<message type>. we can set the break point for this function module.Using WE19, you can process an existing Inbound Idoc, bygiving its number and specifying the function module thatprocess it. It will execute with a dummy Idoc number.

For Outbound Idoc, find the report that generates it, wherethe master idoc distribute FM. is called for that Idoc.Possibilities are that, it can be called in more than 1 FM.

2>Let me know please 'IN real time What is actual role of an abaper in ALE-IDOCS and also wt abaper do in case of CHANGE POINTERS.

Ans. IN REAL TIME MAINLY WE WORK ON EXTENDED IDOC. WE WILL GO FORTHE CAHNGE POINTER IF THERE IS ANY CHANGE IN THE EXITINGDATA NOT THE NEW DATA.IF WE CHAGE THE DATA (EX-CUSTOMERADDRESS)AND EXECUTE BD21 THEN CAHNGW POINTER WILL WORK.IF WECREATE A NEW CUSTOEMR THEN CAHNGE POINTER WILL NOT WORK

3>when idoc is created in which table its storedAns.EDIDD to store data records.EDIDC to store control information.EDIDS to store status of IDOC

4>1.what is master idoc.2.what is communication idoc.3.if i want to send the five records throgh BD10 then how may no ofmaster and communication idocs will generate depends on what they aregenerating the master and communication idocs.

Ans. MASTER IDOCS : IT IS AN IDOC WHICH CONTAINS THE ORIGINALDATA TO BE TRANSFERRED BETWEEN SENDOR & RECEIVER.

COMMUNICATION IDOCS: THIS IS THE INSTANCE OF THE MASTER IDOCS

Page 16: Ale Idoc Interview

COMMUNICATION IDOCS ARE GENERATED FOR EACH RECEIVER FROMMASTER IDOC.

Master IDOC : This idoc collects all the required data into single IDOC and this is temporarily stored in memory.

Communication IDOC: there can be n number of communication IDOCs generated. This comes into picture after the Master IDOC is validated from the distribution model . And this IDOC is stored in database table . you can see this IDOC from we02 tcode.

5> how to send the idoc to multiple sub systems?Ans. when sub system means a logical system then its not possible to send a idoc number to multiple sub systems.

But a idoc number can be send to multiple plant numbers which can be made possible through BD64.

6>Whose responsibility is to create condition records,outputtype ,output determination,condition table ,access sequence?that is i want to know whether its a technical or functionalconsultants responsibility ?ans. Above Realated Functionalities (operations) is Related to Fuctional Guys only, or Sume times According to requirement Clients are take care some output determination.

7. what are the roles and responsibilities of a technicalconsultant will be assigned in idoc development in realtime? in case of a)IDOC EXTENSION b)sending TRANSACTIONALIDOC c)CHANGE POINTERS Ans. CHANGE POINTERS:ACTIVATION OF CHANGEPOINTERS FOR MESSAGE TYPES.

CREATION OF IDOCS FR CHANGE POINTERS.

CHANGE POINTERS CONCEPT IS BASED ON CHANGE DOCUMENT TECHNIQUE,WHICH KEEPS A TRACK ON ALL THE CHANGES MADE TO KEEP DOCUMENTS SUCH AS MATERIALMASTERS,CUSTOMERMASTER,VENDORMASTER.ALL THE CHANGES CREATIONS DONE TO THOSE DOCUMENTS ARE STORED IN CHANGE DOCUMENT HEADER TABLE.TABLE NAME:CDHDR

8. i am learning abap and finding very diffculty inunderstanding the message control technique especially insending IDOCS? what are the steps in message control ?

ans. Message control : Every Idoc that is trasnferred is associated with the message type.

Message type defines the type of data the idoc is containing.

Page 17: Ale Idoc Interview

See for example : If i am transffering material data then my message type would be MATMAS it is predefined.

in the same way if i am tranfering Customer data then my message type would be DEBMAS.

to create a message control:

if you want to send a po go to <me21n> select/create the po.no click /messages/ enter details of output type, medium and partner , also configure the same in <nace>.

go to <we20>select the vendor and double click the message type will take to another screen.click message control and enter the details with respect to /messages/ and give the process code & save.

message control will be created.

8>How to Handle the IDOC Errors using Messages?Ans. I Understand the question as to Handle the IDOC after processing which was showing with error messages.

If that is the case.

Reprocess the IDOC by populating the missing data/ Correct data (Depends upon the type of message showing in the idoc status).

To re-process the IDOC use - WE19 (Tcode) ORRe-trigger the IDOC to re-triggering the message output(Outbound case).

9>What is IDOC Extention. & How to do it?

Ans Extending the function ality of an existing IDOC basic type is IDOC Extenion.Step 1 : Go to WE31 : 1) Create one segment with the fields that are required to extend. Step 2 : Go to WE30 : 1) Select the radio button 'Extension'. 2) Give the New Extension name and click on create button. 3) Give the existing IDOC basic type (which you want to extend) and the Extension description 4) Add the newly created segment in the desired location in the IDOC structure. 5) Save the application.

10>How to create an Idoc & Attached to SAP Transaction?For example we want to trigger IDOC To other system when we Save the PO Via ME21N.Ans. To create an Idoc.

Page 18: Ale Idoc Interview

1. Create message type.2. Attach basic types of IDOC to message type.3. Attach FM to the message type combination of IDOC types4. Creat a process code and attach message type to it.5. Create a Partner function through WE20. Add an message type in the outbound paramater.6. Have an entry of port name and basic types (IDoc types) in the outbound options tab7. Add and an entry in the message control option with the output type (ME21N- Output type) and the process code.8. When you db click on the process code the FM should appear.9. When an output is triggered in the ME21N transaction wit the EDI output medium. The idoc will be triggered

11>what are the main transaction used for IDOCsAns. these are the main transactions are used in the whilecreating the idocs.

we20:patner profilewe21:portwe30:idoc creationwe30:segment creationwe81:message typewe82:link message with idoc type.we02:to status of idocs.WEDI (TCODE)we31:creation of segmentsale-defining logical systemsm59-rfc destinationbd82-generates partner profilesbd64-distributes modal viewsbd10-send materialbd14-vendor materialbd12-gets inboud idoc listwe05-idoc list outbound

12>What is idoc? What is the structure of idoc?Ans. idoc stands for intermediate documents,it is used for datasending current system to remote system .the structure of idocs is1. data records2. control records3. status recors these are stored in sap tables like that.ediddedidcedids

13>how to reprocessing the idoc.Ans. How to Reprocess the IDOC in Both Inbound & OutboundBy: Mohamed

Check these reports:

RBDAGAIN - Process Outbound IDocs with Errors Again

Description: This report reprocesses outbound IDocs which contain errors. IDocs containing errors have one of the following statuses:

Page 19: Ale Idoc Interview

02: Error transmitting data to port

04: Error in EDI subsystem control information

05: Error in conversion

25: Continue processing despite syntax error (outbound)

29: Error in ALE service

RBDAGAIE - Reprocessing of Edited IDocs

Description: This report reprocesses an edited IDoc in inbound or outbound processing. The edited IDoc has one of the following statuses:

32: IDoc edited (outbound)

69: IDoc edited (inbound)

RBDAGAI2 - Re-processing of IDocs after ALE Input Error

Description: You use this report to reprocess inbound IDocs containing errors. IDocs containing errors have one of the following statuses:

56: IDoc containing errors added

61: Continue processing despite syntax error (inbox)

63: Error passing IDoc to the application

65: Error in ALE service

----

For Inbound

1) Goto WE19, select ur IDOC and execute. The details will be shown of IDOC. Change the data in the segment as per your requirement.

2) Click on standard inbound process. If you want to execute the process in foreground, click on standard inbound function module. Select related function module and execute the process in foreground/background.

For outbound

1) Follow same step 1.

2) Click on standard outbound processing

-----

To reprocess Idocs in outbound or inbound you can create back ground jobs using the following programs.

For Outbound:

For 02 status IDocs follow the below procedure:

1. Open SE38.

Page 20: Ale Idoc Interview

2. Give program RBDAGAIN.

3. Give you Idocs and save as variant.(Give any name)

4. Now, go to SM36,and specify a job name(Any name).

5. Now click on STEP give your Variant name in the respective field and you program name as RBDAGAIN.

6. Save and come back.

7. Now click on "START CONDITION".Here you give schedule the job either "Immediately" or "Periodically".

8. To do an immediate job select Immediate and save.Else go for perodic as you need.

9. Now save the screen on SM36.

10. To release the job click "Job selection" -- > select sceduled --> execute.

This would push your Idoc from *02*(Error passing data to port) to 30(Idoc ready to dispatch) status.

Now to send the Idoc from 30 to *03*(Data passed to port OK) use the "RSEOUT00" program and run another job as stated above.

This would send the Idocs to 03.

Similarly at Inbound side:

To reprocess an Idoc in 51 status:

Use program "RBDMANI2" and run a job.It will push Idocs from 51 to 53 status.

For 64 status use "RBDAPP01" program.

You can do it in transaction code BD88

--------

Receiving System (Inbound ALE)

Tcode SALE3 for

a) Define Logical System

b) Assign Client to Logical System

Tcode SM59 -- RFC Destination

Tcode BD64 -- Check for Model view whether it has distributed or not

Tcode BD82 -- Generate partner Profiles & Create Ports

Tcode BD11 -- Getting Material Data

Tcode WE05 -- Idoc List for inbound status codes

Page 21: Ale Idoc Interview

Message Type MATMAS

Tcode BD10 - Send Material Data

Tcode WE05 - Idoc List for watching any Errors

Inbound Status Codes

50 Error --> It will go for ALE Service Layer

56 Error --> Idoc with Errors added

51 Error --> Application Document not posted 65 Error --> Error in ALE Service Layer

For 51 or 56 Errors do the following steps

Goto WE19 --> give the IDOC Number and Execute-->

Press on Inbound function Module

for 65 Error --> goto SE38 --> Execute the Program RBDAPP01 then your getting 51 Error

13>Can anyone get me some real time scenarios in ALE IDoc's.Ans. - communicating between two physically separated systems. Either SAP to SAP or SAP to Non-SAP ,we use IDOC.

- SAMPLE Scenario is a new custom ALE where the receiver of an internal service must be able to reverse the invoice receipt, which will then cancel the applicable billing document automatically on the service providers system. To avoid the conflicts between two systems.

14. i was sent 10 records using outbound in ale/idoc 8 records are up dated in data base tables what happend remaing records did not showing error in we02

ans. I understand u r trying to generate the idocs with 10 records, and u find only 8 (records) idocs created rest(records) are missing.

Check with the filter set up for the records for its receiving partner system(logical system).

Correct the filters then try regenarating the idocs(missing records).

15. I HAVE GENERATED AN IDOC WITH ERROR AGAIN WHEN IAMGENERATING IT .IT IS GENERATED WITH DIFFERENT IDOCNUMBER.BUT I WANT THE SAME NO PREVIOUSLY IT IS GENERATED?Ans. You can use BD87 if you want to reprocess same idoc number,here it will not generate new idoc number.suppose there was RFC Issue ,connection got failed then after rectifying RFC Connection then you can reprocesssame idoc number.

in case data is missing,then you need to WE19 Transaction -

Page 22: Ale Idoc Interview

> enter idoc number -> fill the missing data.just drag the segments ,here you can fill data where ever required.

If you use WE19 then it creates new idoc ,it gives work flow message.

16. Where all the Idocs get stored after creation?Ans. EDIDC stores control/header record.EDIDD/EDID4 stores data records.EDIDS stores status records.

17. Can we attach more than one messages with One IDOC?Ans. IDocs, handle multiple messages with ease. Given thecentralized IDoc interpretation that SAP provides to all itsparts, it’s no problem to define an IDoc that will containmore than one message, that is, more than one data record type.

A customer master IDoc, for example, may contain customerprofile information records for a customer with manylocations. But it may also contain location-specific pricinginformation records for that customer in the same document.This is an incredibly efficient way of bundling relatedrecords, particularly when passing large amounts of complexinformation from system to system (see Figure C).

Figure CCONTROL RECORDDATA RECORD - CUST PROFILE LOC #1DATA RECORD - CUST PROFILE LOC #2DATA RECORD - CUST PROFILE LOC #3DATA RECORD - CUST DISCOUNT STRUCTURE LOC #1DATA RECORD - CUST DISCOUNT STRUCTURE LOC #2DATA RECORD - CUST DISCOUNT STRUCTURE LOC #3STATUS RECORDSTATUS RECORDSTATUS RECORD

18. Suppose their is one sender and we have three recievers.While generating an IDOC will it generate 3 IDOC's for threereceivers? Please explain in detail how the flow goes fromoutbound to inbound systems?Ans. you have to follow all the steps of above answer.In this reply it tells about how process is going on.

while executing the outbound program one master idoc is generated this master idoc contain record which you are send to recievers.Master idoc communicate with ALE, ALE communicate with ALE Distibution model, this ALE distibution model finds how many receivers wants to share the record and it generate all individual idocs to all receivers,this process is going on in background by the ALE distibution model after master idoc came to ALE , next ALE will take care of those individual idocs and ALE service layer sends all idocs to communication layer.Communication layer trasport all the idocs to inbound communication layer.

Inbound Process:

Page 23: Ale Idoc Interview

idoc is recieved by the communication layer in inbound process, this idoc is send to ALE.from here by executing inbound program record is present in idoc is updated in database.

19. where to see idoc in inbound side whether it is received in receiver system or not?Ans. By executing Conversion Program RBDMOIND... 1) Execute RBDMOIND in outbound program2) If the status code is convert into 3 to 12 then we can confirm the IDOC received successfully..

20. hi friends!while sending idoc from receiver side i got msg type 3 and 12.but in receiver side while executing we02,i am gettig the error 'no idocs selected' instead of getting msg type 53.i am simply sending a material from one client to another client.if anybody knows this problem ky revert back.Ans. The very first setting you need to check is in distribution model if the message type is configured for given sending recieving system combination.if this is correct and partner profile is wrong, you will get an IDoc stuc in 56 status on inbound.You can also check in we09 with giving more details like segment name (related to MARA table ) and the corresponding material no. in the field for selection with MATNR.

21. hi friends!while sending idoc from receiver side i got msg type 3 and 12.but in receiver side while executing we02,i am gettig the error 'no idocs selected' instead of getting msg type 53.i am simply sending a material from one client to another client.if anybody knows this problem ky revert back.Ans. we will provide all the information like

1. Message Type.2. Sendor Info.3. Port Number.4. Output Mode.5. Partner Type.6. IDOC Basic Type.

This information will help to Communication & ALE Service layer to process further.

FLOW:(network) --> communication layer --> ALE Service Layer( here it will check the "ALE Inbound Partner Profile") and send to the respected program.

11. what is Tcode for Basic ALE configuration?ANS. SALE is correct - through this we can define all the basic's of IDoc

13. tell me about status codes?ANS. these r the mile stones in transfer of IDOC by which the

Page 24: Ale Idoc Interview

IDOC sending system knows the status of IDOC . there are 75 status record 0 to 49 are recorded for outbound and 50 to 74 are for inbound.

14. 16. what is the status code when IDOC is created?ANS. 01 for Outbound side

51 for Inbound Side.

64. How do you get output from IDOC?ANS. Function moudles or processing routines are alloted dynamically based on message type andn IDCO type. We use these function modules to process IDOC segments to get data and move this segment data into internal tables.

77. I am transferring 10 data records from outbound though idocs but8 records are transferred , what about reaming records butit did not show any error?ANS. Just Check the Filter settings.Remove the filter for the fields and then transfer the datarecords again.If the filter is set it will not show any error.

83. can any body tell what is idoc archieving and how to do that?ANS. Archiving means collection of HISTORIAL Idocs that can bestored out side of The Database,By using this We can reduceload on the data base."WE10" is the TCODE for archive idoc info structure.Here 2 options is availabale.1. Database2. Archive-> We can select Archive idoc then it give the informationabout This.

144. in which table idocs are stored?ANS. EDIDC ---Control record IDoc

EDIDS ---Status Record IDocEDIDD ---Data records

152. explain the scenario of ALE/IDOC.ANS. ALE: is nothing but application link enabling is used toconnect with the non sap systems to the sap systems. andalso the used to connect with the legacy systems with thesap systems. just its a link between the two process.IDOC; is nothing but intermediate document. IT is thecontainer of the message. idoc can be transferred betweenthe two process to send the data or container of themessage. Every idoc have three types of records.these three types are records are given below.

----> data record----> control record----> status recorddata record: is contains administration data header data and item data.control record: is contains of sender information recieverinformation , message type, idoc type , idoc number.status record: is contains of all the status of idocs. process steps:

-->define the logical systems

Page 25: Ale Idoc Interview

-->assign the logical systems to the respective clients-->define the RFC destination-->create the customer distribution model-->create the patner profile-->creat the port-->create the message type-->assign the message type into the idoc type--> to check the status of idocs.

158. CAN WE DEBUG A IDOC? IF YES HOW TO DEBUG IN INBOUND SIDE ANDOUTPUT SIDE.ANS. Yes We can Debug.Outbound IDOC is just Program to prepare IDOC. Go to thatprogram and put a break-point and debug.debug the inbound idoc1) we 19 give the idoc number execute2) click on inbound function module select the radio button in fore ground 3) check the check box call in debug mode enter in will go through the function nmodule debug mode

295. how to send the idoc to multiple sub systems?ANS Before send IDOc to multiple system you haveto configure logical system(SALE), Maintain RFC destination(SM59), Create Port(WE21) in all recevied systems..Next step In sender sytem maintain message type in Distribution Model(BD64) and maintain outbound partener profile(we20) in sender system..In receiver reciver system just maintain inbound partner profile(we20)..The above steps repeat for all receivers and finally send IDOC.363. what is the purpose of RDBMOIND RPOGRAM?Ans. RBDMOIND is used to update the status of Outbound IDoc from 03 to 12.03- Idoc pasted to communication layer12- data passed to port OK

364. what is the difference detween EDI AND ALE?Ans. EDI:edi is electronic data interchange is exchange the data byelectronically from one system to the another system thatis weather is document or anything.ex:if you send thepurchase or der from the (sender) system that means outboundsystem that is recieved to sales order to the inboundsystem(Reciever)so that means that document is changed by electronicallyfrom the outbound system to the inbound system.

ALE:

Application link enabling it provides the link between thetwo systems that is the sap or non-sap or third partysystems within the distributed systems only. ex: if u sendthe purchase order from the outbound system the inboundsystem also recieves the same purchase order . that meansthere is no change. so changes not possible in ALE.365. what is process code?Ans. which code is used for read the data from ci(communication idoc) and it stores the data in perticular data base table.that code is process code.ex : matm .

Page 26: Ale Idoc Interview

it reads CI and stores the data in mara table.

376. parter profiles are stored in which table?ANS. EDPP1 EDP12 EDP13 EDP21

413. what are the roles and responsibilities of a technicalconsultant will be assigned in idoc development in real time?in case of a)IDOC EXTENSION b)sending TRANSACTIONAL IDOCc)CHANGE POINTERS

ANS. 1)IDOC Extension is nothing but Extending the Existing IDOC as an Enhancement2)Transactional IDOC is means that sending the IDOC from place to an another by using FM called INBOUND-IDOC_PROCESS3)Change pointers are menat for Activate the IDOC by using TX Code BD61429. i want to know abt. IDOCs and ALE like what's the role ofmessege type in IDOCs and how things goes on in backgroundi know i sound absurd but as i m not clear abt.ANS. Message Type for an Idoc is used to indentify the contents of the Idoc or a breif context under which the IDOC has to be sent.

Suppose you have an IDOC to be sent to your vendor which has purchase details .U also want to send the same data to Vendor's Plant as an acknowlkedge to the receipt of material.

Sending the same idoc with same message type to both of them might lead to confusion.

IN order to avoid this you attach our idoc segment to a message type whih defines what is it carriying.You do this assiging a segment to Message type in WE81

430. what is meaning of idoc monitoring?ANS. Idoc monitoring means Idoc Status456. what is the difference between message type and basic type?ANS. MESSAGE TYPE IS THE MESSAGE WHICH IS TRANSFERRED IN BETEEN THE BUSINESS PARTNERS.BASIC TYPE IS THE CONTAINER OF THE MESSAGE.473. what is meant by idoc filtering?ANS. I Doc filtering is nothing but wipout unwnted idoc's that ar not required to recevingpartner.Let us suppose some message type iam sending from my central datbase sever to 5 no's application severs let it take as some plants in my company code .The master idoc will contains the data pertaining to the five plants.in thia case for plant No1 date is not reqiured pertaining to all the remaining plants i.e 2 3 4 5.in this case while creting the distribution model whe have to mention the filter key'sThen when ever the master IDOC passe through ALE service layer it will check;s for filter key' values s for a receiver and it will wash out's the all the idoc's otherthan the values and cretes the communication IDOC.alwys communication Idoc is the subset of Master Idoc.

Page 27: Ale Idoc Interview

configuration?ANS. ALE configuration :Goto SALE T-code then 1) Design LogicalSystem and go back to IMG initial Screenand 2) Assign Logical System to the client.3)then Goto SM59 to create RFC Destinatio for the Logical System (i.e.receiver system.).4) then Goto WE21 T-code for Port Creation in WE20 select TranscationalPort and create your Own Port.5) Goto BD64 T-code for Distribution Model here we create Model view and specifies the what kind of Message is distributed between them .6)we'll save and goto environment in the menu bar..7) goto we20 T-code for Partner Profile ..create the Partner file ..and give inbound and outbound messagetypes. These r the steps for ALE Configuration.Suppose If u Specify Matmas as Message type ...got BD10 and sent the material .

484. if idoc generated successfully where it can be stored i knowdatabase)?ANS. EDID4 - Data Records are Stored in this Data Base Table.EDIDS - Status records are Stored in this DB Table.EDIDC - Control Records are Stored in this DB Table

485. how to process the idoc?ANS. idoc can be processed by using processing codestransaction codes for processing codes: we41 for out bound process codes we42 for in bound process codes

577. How do you get output from IDOC?ANS. Function moudles or processing routines are alloted dynamically based on message type andn IDCO type. We use these function modules to process IDOC segments to get data and move this segment data into internal tables.

589. What are the steps need to setup before creating an IDoc?ANS. Communication Settings:1) Create and Assining Logical Systems -- SALE2) Maintain RFC destination -- SM593) Maintain TRFC Port -- WE21

( Above configuration required irrespective of sending or receiving an IDOC).

Mandatory Outbound Configuration:

Matain Distibution Model -- BD64 Maintain Partner Profile -- WE20

Page 28: Ale Idoc Interview

CURRENT OBJECT Master data can be transferred by two methods:

1. Triggering through stand-alone programs

A material is created in R3SCLNT800 and should be transferred to R3SCLNT810.

Step1: Define Logical Systems             T.code SALE

Step 2:  Assign Client to the logical system          T.code: SALE

Step 3: Create RFC Destination                                   Tcode: SM59

Note: Provide Connection type as ‘3’ indicating connection to R/3 system

Step 4: Define port                        Tcode: we21

Port is the medium in which data is transferred.

Step 5: Maintain Partner Profiles               Tcode: WE20

In  partner profile we specify the names of the partners which are allowed to  exchange IDocs .

Double Click on the Message type MATMAS the following opens.

  Enter the details for Receiving port, Pack size and Basic type.

Step 6: Create Customer Distribution model   Tcode: BD64

Click on the Create button and enter the short text, Technical name

Now select the created model view and click on Add message type button .A pop up box appears, enter Sending system, receiving system and message type.

Save the Distribution model 

Generate Partner Profiles 

Click the menu item ‘Generate Partner Profiles’.

It leads to the next transaction where in the selection screen you have to provide Model view name, Partner System logical system and execute.

Then, you will be intimated about the partners, port creation, and outbound parameters creation. 

Distribute Customer Distribution Model 

In the menu item ‘Distribute’ to the destination client.

Popup window appears ,  press Enter. 

Page 29: Ale Idoc Interview

Generate Partner Profiles in partner system (in bound system)

Transaction: BD82

Provide Model view and logical system of Partner system to this system (our Outbound system)

Execute, again you will be intimated about the creation of inbound parameters.

NOTE:You cannot maintain a message type between the same sender and receiver in more than one customer distribution model.Only the owner is authorized to modify the model.

Step 7: Creation of material    T.code MM01.

Enter the details as shown below and create a material.

Step 8: Send the created material.                   T.code BD10

Enter the material created or changed, message type and the destination system as follow and execute.

We get the information as 1 master Idoc created, 1Communication Idoc created. 

Step 9: View the IDoc                                  T.code we05

Technical Settings In the Receiving system R3SCLNT810.

Partner Profile                        T.code WE20

For the partner add the message type .here the message type is MATMAS

Double click on the message type and enter the processing code (MATM) and select Trigger Immediately radio button, save.

Get the material                                                                                         T.code BD11.

Enter the material created or changed, and the Message as shown below.

If every thing is fine IDOC will be created.

View the Idoc in the T.code We09.

Data Transfer by Change Pointers:

Steps from 1 to 6 are same as stand alone programs.

Step1: Define logical system

Page 30: Ale Idoc Interview

Step2: Assign logical system to the client

Step3: Create RFC Destination  

Step4: Define Port

Step5: Generate partner profiles

Step6: Create Customer Distribution model  

The following are the additional steps for Change pointers

Note (The following steps are to be maintained in both the sending and receiving systems)

Step 1: Activate change pointers generally              T.Code BD61

Check the box so that change pointers get activated and keep track the changes to

trigger ALE process. 

Step 2: Activate change pointers for the message type            T.code BD50

Step3: Change Document should be checked at data element level 

Step4: Run the program RBDMIDOC or the T.code BD21

Create or change a material and check for the Idoc creation in the T.code WE09.  

A) TCODE:   BD50 (Activate change pointer for message type)  

Below screen shows Activating change pointer for Message Type 'MATMAS'  

In above screen if active flag (Check box) is unchecked then Change pointers is deactivated.  

B) TCODE:   BD66 (Segment Field-Change Document field)  

Change Document field should exist in this TCODE align particular Segment type.  

The above screen shows the fields in change document.  

Message Type: MATMAS

Page 31: Ale Idoc Interview

Segment Type: E1MAKTM  

C) TCODE:   BD61 (Activate change pointers generally)  

f some messages types are no longer to be distributed by change pointers, you can deactivate change pointers for this message type (by removing active flag in BD50). We can deactivate change pointers for the message type and reactivate them again in transaction BD50.

Following screen shows how to deactivate change pointers for reduced message types.

3. Creating IDOC with change pointers.

 TCODE:   BD21

Purpose: Create IDOC type from change pointers

Program: RBDMIDOC  

We can create IDOCS from change pointers with the report RBDMIDOC

The report tells how many master and communication IDocs have been created.

TCODE:   BD22

Purpose: Delete Change Pointers

Program: RBDCPCLR  

Here we can delete obsolete and processed change pointers in specific time and for specific message type.  

Issue

IDocs are sent separately with immediate processing, which causes frequent logons

Solution

Use background ‘Collect IDocs’ in output mode of outbound partner profile where possible

Select appropriate packet size (1000-2000 IDoc segments/packet)

Issue

Page 32: Ale Idoc Interview

Time-out if too many IDocs are created at once (e.g. direct sending of master data)

Solution

Use appropriate range selection

Use parallel processing if available

Periodically schedule “RSEOUT00

Issue

Performance Problem when processing change pointer

Solution

Reorganize change pointers (RBDCPCLR)

Change of a view and an index

Change of source code

Issue

Slow update of documents that trigger the creation of IDocs via message control (e.g. sales order, purchase order)

Solution

Create IDocs not immediately but later via regularly scheduled program “RSNAST00”

Issue

Long response times for online users because ALE processing occupies available dialog work processes

Solution

Use separate application servers for online users and ALE processing

Use of RFC server groups (>= 3.0F)

Issue

Processes wait for availability of work processes

Deadlock situation is possible (< 4.0)

Solution

Increase number of dialog work processes

Page 33: Ale Idoc Interview

Number of occupied WP on sender <= WP on receiver

Issue

The connection between R/3 and an external system is slow because the external system is started for every RFC call

Solution

Register the external program to the SAP gateway

Issue

The data transfer via the network takes too long

Solution

Increase the network bandwith

Issue

For the automatic retry of failed RFCs, usually batch jobs are scheduled automatically. This can cause performance problems (too many batch jobs scheduled)

Solution

Deactivate the automatic batch scheduling(tRFC-options of RFC destination)

Schedule program “RSARFCEX” regularly

Issue

With immediate processing, a WP is blocked on the sending system until the message is processed completely

Many WPs are blocked on receiving system (< R/3 Release 4.0)

Solution

Use background processing in inbound partner profile and schedule report “RBDAPP01” (with parallel processing)

Issue

Slow performance of mass inbound processing

Solution

Use parallel processing together with background processing when possible (in report “RBDAPP01”)

Do not use parallel processing if multiple IDocs exist for the same application object (e.g., goods movements)

Issue

Page 34: Ale Idoc Interview

Slow performance of processing of inbound messages

Solution

Do appropriate performance tuning for the posting of the messages in the inbound application

Correct sequence of scheduled batch jobs can improve the performance

Schedule IDoc transfer (RSEOUT00) after IDoc creation (RBDMIDOC or RSNAST00)

Schedule reorganization of change pointer (RBDCPCLR) after selection of change pointer (RBDMIDOC)

Schedule inbound processing (RBDAPP01) after IDoc transfer (RSEOUT00)

...

Issue

Large data base tables reduce performance by increasing time for selects/updates

Solution

Archive data regularly (IDocs, application documents)

Reorganize data base table after archiving