ALE - IDOC vs IDOC - EDI
Hi,
I can see the ALE IDOC configurations at many places . Whats the process to send an IDOC to External Non-SAP System?
Does it differ much??
Please explain the steps.
Hi,
Pushing the IDOC from SAP to External:
IDOC are SAP specifc data structure. Only SAP understands IDOCS natively. Normall what you can do is write a process that maps the IDOC to the format the recieving system is looking for. ie: flat file etc... Or if the external system can be coded to understand the IDOC structure, you could put a flat file with this structure to be read by teh external system.
Pulling from the External system:
Usin connectors, the external system can call a BAPi or RFC function module that can create IDOCS and pass the data to the external system using the IDOC structure.
thanks.
JB
Similar Messages
-
ALE/IDOC/BAPI/BADI/EDI
Hi,
ABAP GURUS
I am a new bie to SAP .Now I want to learn the following things :-
ALE
IDOC
BAPI
BADI
EDI
My doubt is that which should be learned first so that I can understand them more effectively. It may be possible that is not a question to ask but please guide me and also provide me some good links of ppt which gives me the complete overview of all these and the steps to use them.
Thanks In Advance
Bharti JainHi Bharti,
EDI is Electronic Data Interchange, and is not linked to any technology, is just the definition of the communication of data using electronic equipment. ALE is Application link enabled, and is used by SAP to communicate data between systems, to build distributed systems, using electronic communication.
iDoc is a data format to send and receive data, then, can be used for EDI and ALE.
Bapi and Badi are programming tools, that allow to modify the data in the system, and also, a BAPI can be used to send data to other systems, but, in short, are just functions.
Regards,
Ivan. -
hello experts !! could u plz give me some idea or step by step help for creating IDoc to IDoc data transfer through ALE.
My scenarion is like the following:
there will be two client in two R/3 system..(Sending and receiving)....
in sending system i want to insert data in a particular table....
that data will be automatically updated in receiving system..
plz help meeeeeeee
thanks...
points will be rewarded.......Hi Soumya,
Follow the process as below
Outbound:
Step 1. Application document is created when transaction is saved.
2. Message control is invoked.
3. Messages are processed by system.
4. Messages are Edited (if desired).
5. Output (ALE / EDI) is checked
6. Validate against Message control record from Partner Profile
7. Application Document is saved.
8. Entry NAST table is created for every selected output program
along with Medium & Timing.
9. Check for Process Immediately .
If (yes)
Determine Processing Program from TNAPR Table.
ELSE
Execute RSNASTED Program.
10. Read Partner Profile to determine Process Code.
11. Process Code points to the Function Module & Invoked.
12. IDoc is generated.
13. Check for ALE Request.
if (Yes)
Perform Filters, Conversions, Version Changes etc.
Else.
IDoc is stored in DATABASE.
INBOUND:
Step 1. EDI Subsystem creates an IDoc file from EDI Messages
2. Subsystem calls Functional Module EDI_DATA_INCOMING from startRFC program.
3. Data in Control Record is validate against the Partner Profile.
4. IDoc is generated in Database and syntax check is carried out.
5. IDoc file is deleted once file read.
6. Event PROCESSSTATE REACHED is triggered in Idoc Object Workflow.
7. Check for Process Immediately.
If NO
Execute RBDAPP01 Program
Else
Read Process Code from Partner Profile
Process Code Points to Function Module
Application Document Posted.
further help:
check url
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/ale/configuration.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapdevelopment.co.uk/training
And also u can get lots of inof from the below link.
http://www.sapgenie.com/ale/why_ale.htm
Just follow the procedure
Sending System(Outbound ALE Process)
Tcode SALE ? for
a) Define Logical System
b) Assign Client to Logical System
Tcode SM59-RFC Destination
Tcode BD64 ? Create Model View
Tcode BD82 ? Generate partner Profiles & Create Ports
Tcode BD64 ? Distribute the Model view
Message Type MATMAS
Tcode BD10 ? Send Material Data
Tcode WE05 ? Idoc List for watching any Errors
Receiving System(Inbound ALE )
Tcode SALE ? 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
ALE IDOC Steps
Sending System(Outbound ALE Process)
Tcode SALE ?3 for
a) Define Logical System
b) Assign Client to Logical System
Tcode SM59-RFC Destination
Tcode BD64 !V Create Model View
Tcode BD82 !V Generate partner Profiles & Create Ports
Tcode BD64 !V Distribute the Model view
This is Receiving system Settings
Receiving System(Inbound ALE )
Tcode SALE ?3 for
a) Define Logical System
b) Assign Client to Logical System
Tcode SM59-RFC Destination
Tcode BD64 !V Check for Model view whether it has distributed or not
Tcode BD82 -- Generate partner Profiles & Create Ports
Tcode BD11 Getting Material Data
Tcode WE05 !V Idoc List for inbound status codes
Message Type MATMAS
Tcode BD10 !V Send Material Data
Tcode WE05 !V Idoc List for watching any Errors
STEP 1)a Goto Tcode SALE
Click on Sending & Receiving Systems-->Select Logical Systems
Here Define Logical Systems---> Click on Execute Button
go for new entries
-System Name : ERP000
-Description : Sending System
-System Name : ERP800
-Description : Receiving System
press Enter & Save
it will ask Request
if you want new request create new Request orpress continue for transfering the objects
B) goto Tcode SALE
Select Assign Client to Logical Systems-->Execute
000--> Double click on this
Give the following Information
-Client : ERP 000
-City :
-Logical System
-Currency
-Client role
Save this Data
Step 2) For RFC Creation
Goto Tcode SM59-->Select R/3 Connects
Click on Create Button
RFC Destination Name should be same as partner's logical system name and case sensitive
to create the ports automatically while generating the partner profiles
give the information for required fields
RFC Destination : ERP800
Connection type: 3
Description
Target Host : ERP000
System No:000
lan : EN
Client : 800
User : Login User Name
Password:
save this & Test it & RemortLogin
STEP 3) Goto Tcode BD64 -- click on Change mode button
click on create moduleview
short text : xxxxxxxxxxxxxx
Technical Neme : MODEL_ALV
save this & Press ok
select your just created modelview Name :'MODEL_ALV'.
goto add message type
Model Name : MODEL_ALV
sender : ERP000
Receiver : ERP800
Message type :MATMAS
save & Press Enter
STEP 4) Goto Tcode BD82
Give Model View : MODEL_ALV
Partner system : ERP800
execute this by press F8 Button
it will gives you sending system port No :A000000015(Like)
STEP 5) Goto Tcode BD64
select the modelview
goto >edit>modelview-->distribute
press ok & Press enter
STEP 6) goto Tcode : BD10 for Material sending
Material : mat_001
Message Type : MATMAS
Logical System : ERP800
and Execute
STEP 7)goto Tcode : BD11 for Material Receiving
Material : 100-300
Message Type : MATMAS
and Execute --> 1 request idoc created for message type Matmas
press enter
Here Master Idoc set for Messge type MATMAS-->press Enter
1 Communication Idoc generated for Message Type
this is your IDOC
Change Pointers
how to change the description of a material using ALE Change Pointers.
I will give the following few steps
1) Tcode BD61---> check the change pointers activated check box
save and goback.
2) Tcode BD50---> check the MATMAS check box save and comeback.
3) Tcode BD51---> goto IDOC_INPUT_MATMAS01 select the checkbox save and comeback.
4) Tcode BD52---> give message type : matmas press ok button.
select all what ever you want and delete remaining fields.
save & come back.
5) 5) go to Tcode MM02 select one material and try to change the description and save it
it will effects the target systems material desciption will also changes
6) goto Tcode SE38 give program Name is : RBDMIDOC and Execute
give Message type : MATMAS and Executte
ALE/IDOC Status Codes/Messages
01 Error --> Idoc Added
30 Error --> Idoc ready for dispatch(ALE Service)
then goto SE38 --> Execute the Program RBDMIDOC
29 Error --> ALE Service Layer
then goto SE38 --> Execute the Program RSEOUT00
03 Error --> Data Passed to Port ok
then goto SE38 --> Execute the Program RBDMOIND
12 Error --> Dispatch ok
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
Regards,
Satish -
Doubt regarding ALE SETTINGS in IDOC scenario.
Hi Friends,
I have some doubts regarding ALE settings for IDOC scenarios, can anyone please clarify my doubts.
For exmaple take IDOC to FILE scenario
The knowledge i got from SDN is --
One need to do at the R3 side is --- RFC DESTINATION (SM59) for the XI system.
--- TRFC PORT for sending IDOC to the XI system
--- CREATING LOGICAL SYSTEM
--- CREATING PARTNER PROFILE
at the XI side is --- RFC Destination ( For SAP sender system)
--- CREATING PORT for receiving IDOC from the SAP sending system(IDX1).
1. Do we create two logical systems for both Sender ( R3 system ) and Receiver( XI system ) in R3 system itself or in XI system or in both systems we create these logical systems? Is this a mandatory step in doing ALE configurations?
In IDOC to IDOC scenario-------
2. Do we craete two RFC destinations in XI system? One RFC DESTINATION for the Sender R3 system and another RFC DESTINATION for the Receiver R3 System? and do we create RFC DESTINATION for the XI system in receiver R3 system? If not.....y we don't create like this........Please give me some clarity on this.............
3. If we use IDOC adapter ,since IDOC adapter resides on the ABAP STACK ,we don't need sender communication channel ,for the similar reason----
y we r creating receiver communication channel in the case of FILE to IDOC scenario?
4. Can any one please provide me the ALE settings for IDOC to FILE scenario,
FILE to IDOC scenario,
IDOC to IDOC scenario individually.
Thanks in advance.
Regards,
Ramana.hi,
1. Yes, we create two logical systems for both Sender ( R3 system ) and Receiver( XI system ) in R3 system itself and
it is a mandatory step in doing ALE configurations
2. We create 1 RFC destination each in R3 and XI.
R3 RFC destination points to Xi and
XI RFC destination points to R3
3 We need to create Communication Channel for Idoc receiver as the receiver channel is always required but sender may not be necessary
4. ALE settings for all IDOC scenarios are same as follows....
Steps for ALE settings:-
Steps for XI
Step 1)
Goto SM59.
Create new RFC destination of type 3(Abap connection).
Give a suitable name and description.
Give the Ip address of the R3 system.
Give the system number.
Give the gateway host name and gateway service (3300 + system number).
Go to the logon security tab.
Give the lang, client, username and password.
Test connection and remote logon.
Step 2)
Goto IDX1.
Create a new port.
Give the port name.
Give the client number for the R3 system.
Select the created Rfc Destination.
Step 3)
Goto IDX2
Create a new Meta data.
Give the Idoc type.
Select the created port.
Steps for R3.
Step 1)
Goto SM59.
Create new RFC destination of type 3(Abap connection).
Give a suitable name and description.
Give the Ip address of the XI system.
Give the system number.
Give the gateway host name and gateway service (3300 + system number).
Go to the logon security tab.
Give the lang, client, username and password.
Test connection and remote logon.
Step 2)
Goto WE21.
Create a port under transactional RFC.(R3->XI)
Designate the RFC destination created in prev step.
Step 3)
Goto SALE.
Basic settings->Logical Systems->Define logical system.
Create two logical systems(one for XI and the other for R3)
Basic settings->Logical Systems->Assign logical system.
Assign the R3 logical system to respective client.
Step 4)
Goto WE20.
Partner type LS.
Create two partner profile(one for XI the other for R3).
Give the outbound or inbound message type based on the direction.
Step 5)
Goto WE19
Give the basic type and execute.
fill in the required fields.
Goto IDOC->edit control records.
Give the following values.(Receiver port,partner no.,part type and sender Partner no. and type)
Click outbound processing.
Step 6)
Go to SM58
if there are any messages then there is some error in execution.
Goto WE02.
Check the status of the IDOC.
Goto WE47.
TO decode the status code.
Step 7)
Not mandatory.
Goto BD64.
Click on Create model view.
Add message type.
BD87 to check the status of IDOC.
In case if not authorized then go to the target system and check in SU53, see for the missing object
and assign it to the user.
SAP r3
sm59(status check)(no message)
WE02(status check)
WE05(status check)
BD87(status check)
Xi
IDx5(Idoc check)
SU53(authorization check)
Reward points if helpful
Prashant -
IDOC DELVRY05 TO EDI 856 - Mapping problem
Hi all,
i'm currently working on a outbound mapping with the delivery idoc (DELVRY05) and the EDI 856 (Advance Shipping Notice Definition)
The problem is that i can't map the items for every pack in the structure because the ocurrency doesn't match.
The EDI 856 has a segment called G_SHL (ocurrence 0.200000), that i replicated 4 times for shipping, order, pack and item data
And this segment has a subsegment called G_SHL/S_HL (ocurrence 0.1)
RESULT DESIRED GIVEN BY THE CLIENT: (1 pack/1item)
3 HL1*S~ ======> S: shipping, 1 hierarchy)
4 TD1CTN251***G223.997*LB~
5 TD5*2ABFSM*CC~
6 REFBM003030987~
7 REFCN086044619~
8 DTM01120080128*180610~
9 DTM06720080204~
10 FOB*PP~
11 N1SFStiefel Labs~
12 N4DULUTHGA*30096~
13 HL21*O~ ======> O: order, 2 hierarchy, 1 was the previous hierarchy)
14 PRF*4064561~
15 HL32*P~ ======> P : Pack, 3 hierarchy, 2 was the previous hierarchy
16 MANGM00000734620052976193~
17 HL43*I~ ======> I: Item , 4 hierchay, 3 was the previous hierarchy
31 LIN*UP073462150651LT45X5147ND00145150605~
32 SN1*12EA~
33 DTM03620090930~
34 HL52*P~ ======> P : Pack, 5 hierarchy, 2 was the previous hierarchy
35 MANGM00000734620052975189~
36 HL65*I~ ======> I: Item , 6 hierchay, 5 was the previous hierarchy
37 LIN*UP073462150651LT45X5147ND00145150605~
38 SN1*12EA~
39 DTM03620090930~
40 HL72*P~ ======> P : Pack,7 hierarchy, 2 was the previous hierarchy
41 MANGM00000734620052975196~
42 HL87*I~ ======> I: Item , 8 hierarchay, 7 was the previous hierarchy
43 LIN*UP073462150651LT45X5147ND00145150605~
44 SN1*12EA~
45 DTM03620090930~
46 CTT*8~
47 SE479220014~
As u see, all packs belong to "2 hierarchy" (order), and items to their correposding pack
(has a comment, the "hierarchy number" is always given by a counter so u won't find the exact number again)
so, the client wants us to create an structure that is like this..
1º Pack
1º item
2º item
2º Pack
1º item
2º item
(the example has only one item, but they say that is going to be with many items)
- The problem is that the structure data of the Idoc doesnt match EDI 856 structure
E1EDL37 (0.99999) -
Pack data -
G_SHL (0.200000)
E1EDL37/E1EDL44 (0.99999) -
Item data -
G_SHL/HL (0.1) <====
i was doing different G_SHL for pack and items but that leaves me with a wrong structure, and with all the hierarchy data wrong for items (since the mapping can't see which item belong to his pack)
1º Pack
2º Pack
3º Pack
1º Item
2º Item
3º Item
- How can i map the structure Pack/item if in the idoc got too many item positions for only one EDI corresponding segment??
Thanks in advance!Alains,
We have the same tear, pack and item problem with one of our customer in one of my project. To acheive this result with the standard schema is not possible because this is a custom one.
So I would suggest to change the schema in BIC like the occurrence and within the third G_SHL you should have S_HL and within this you should have a S_HL so that for every pack you will have multipe items.
The bottom line is to have the schema as required by your mapping. Once you change the schema deploy the maps in J2EE and use them else it will throw an error in RWB.
Regards,
---Satish -
Using PI to map IDoc BENEFIT3 to EDI 834
Has any used PI/XI to map IDoc BENEFIT3 to EDI 834? We are looking to use this approach but have had problems finding a standard map. You would think SAP would have one since they stand by their BENEFIT3 IDoc being sufficient to map to the 834. This will take forever to do it from scratch or even without an example. Help please.
Hi
You can do 1:n multimapping
in message mapping in messages tab ..add both the structures in target tab and do the mapping
and in operation mapping add both the message interface on the target side
PLease go through this blog
/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible -
Multi-Mapping without BPM (Multiples IDoc To one EDI output?)
Hi all,
We are currently working for a client that want us to create, based on a multiple IDoc (an idoc that contains data of more than one idoc) only one output
Meaning that we have to do a mapping that based in this multiple input generates only one output that cointains all that data in only one flat file
example:
Idoc: PERX2002.PAYTEXT generates an EDI 820 with this structure:
LIST
/S_ISA (first input)
/S_ISA (second input)
At this moment we tried to use "Collect IDoc" option in SAP, and as seen in other blogs we changed the ocurrency of the message mapping to "0.unbounded", but when we release several idocs (WE14) we only get multiples output files (3 idoc collected and released give us 3 different edi files) instead only one edi file with all the data gathered together as ISA segments
In this required process possible???
Thanks in advanceAs you can see in the following pics..
http://img201.imageshack.us/img201/8352/process1xz1.jpg
http://img244.imageshack.us/img244/4954/processvc9.jpg
i already made those changes, the multi-mapping is set, and also the option for collecting the IDocs and the "enhanced" option in the Integration Directory, but when i release all the idocs i still get multiple outputs (2 files), instead one file with all the gathered data
Could someone tell me if i'm missing some step?
Thanks for your time
Edited by: Alexis Alanis on Jan 7, 2008 7:24 PM -
In respect of ALE Audit in IDOC
1. All IDOC receivers send Acknowledgement.
2. All IDOC senders expect an Acknowledgement
3. Receiver communication channel is required for ALE Audit
4. Sender communication channel is required for ALE Audit
I believe 1 and 3 correct. Please confirm me.
thanks
kumarKumar,
I think 3 is correct , 1 & 2 also correct but based on condition, please see below.
<b> 3</b> -sure
<b>2</b> - Please refer the below doc ,Page 1
fyr :In general, acknowledgments have to be requested explicitly by the sender. However, this does not apply to IDocs. The following acknowledgments are sent back by default, unless the corresponding message type is maintained in an exception table.
<b>1</b> - Please refer the below doc Page 1
fyr :IDocs only return acknowledgments if the receiver is configured for using ALE audit.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f6d2d790-0201-0010-9382-b50b499b3fbe
Please correct me if i 'm wrong!!!
Best regards,
raj. -
IDoc eror as "EDI. Partner profile not available
Hi All,
I got IDoc eror as "EDI. Partner profile not available " in WE09. Please clarify as to what exactly the error message means, " EDI. Partner profile not available ".
Thanks
YashYash
I guess you need to maintain partner profile for that Business Partner using T code WE20. That's what it means. -
AES filing error - Idoc Outbound Processing: EDI number cannot be compiled
Hi Gurus,
We are configuring the AES filing.
we've done the EDI configI and initally we got the error that EDI partner is not maintained. As per the suggestions from this Forum we've added the cusoms office details in geography tab.
Now when we are trying to process the same, we are getting the error "Idoc Outbound Processing: EDI number cannot be compiled"
All suggestions are welcome.........
Thanks in Advance.Hi Shiva,
Here goes the solution: you need to maintain the Number of the Number Ranges starting with "10" and this applies only to GTS system as this is HARD-CODED in the Program, apart from 10 any number of the number range will result in an "EDI Number Range compilation" error.
Cheers
Harsha -
How to convert Idoc file to EDI format?
Dear Expert,
I've config outbound process of purchase order and send idoc out put to idoc file(XML) after that I would like to convert IDoc file to EDI format. How to conver IDoc file to EDI format?
Please suggest me.
Big thanks,
SakConsult Abaper..
Interface is going to do this activity -
IDOC Invoices and EDI Invoices
Hi Gurus,
Please help me in understanding the flow of IDOC Invoices and EDI Invoices.
What is the purpose of using IDOC and EDI? How it works?
Please revert asap.
Thank YouHI Verma,
You can post the invoices in SAP system through IDOCs.
Mostly, this activity is performed/triggered, when the invoice data is with third party.
Third party will have the invoice data base and sends a file to SAP.
SAP XI will map/convert the file(sent by third party) to fields in SAP and posting of invoice happens.
Please refer the below links for EDI Invoices
EDI invoices
Creating EDI Invoices
Hope this will help you in understanding IDOC invoices and EDI Invoices.
Regards,
Praisty
Edited by: Praisty on Dec 22, 2009 1:20 PM -
Hi,
Where can i find the IDOCs' for the EDI's
812, 816, 822, 846, 860, 867, 870 and EDIFACT INVRPT
Is there any specific tcode to find the IDOC's for the particular EDI's ?Hi,
Please check my previous reply in this thread.
Re: IDOC Types and their equivalent messages in EDIFACT and ANSI X12
Regards,
Ferry Lianto -
Hi all,
I have an user exit in an IDoc .
I need to make the IDoc fail for a particular condition.
The status record data is not flowing into the user exit, so i cannot change the status record, i suppose
Plz advise me what to do in this ??
Thanks and Regards,
Vivek ..Vivek,
You need to be able to change the STATUS record of the IDOC in the exit, other wise it will not reflect in the IDOC.
If the status record is not available a work around could be to find out the table for the status record in the memory and assign that to a field symbols and then change the value.
Here is some information about ALE / IDOC.
Please check this online document for ALE and IDoc.
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEIO/BCMIDALEIO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEPRO/BCMIDALEPRO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFAALEQS/CABFAALEQS.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVEDISC/CAEDISCAP_STC.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVEDI/CAEDI.pdf
Also check this links for additional information.
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
IDOCS
http://idocs.de/www5/books/IDocBook/IDOCS_CHAP09-11.pdf
http://idocs.de/cookbooks/idoc/cb12_idoc_20_outbound/idoc_outbound_45_rsnast00/docu.htm
Regards,
Ravi
Note : Please mark all the helpful answers -
What is memory idoc , communication idoc
plz tell me about
memory idoc , communication idoc.hi kalyan,
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..comm idoc is the physical idoc which is reciever specific
IDOC Programming
There are two processes in IDOC processing one is INBOUND PROCESS( IDOC coming to the system and its handling at various stages) and the other is OUTBOUND PROCESS( IDOC is send to other system . Separate ABAP programs are written for these 2 processes and different configuration settings are required for each one .Depending upon the trigeering mechanism different programming approaches are used.OUTBOUND PROGRAMS handle the IDOC creation and INBOUND PROGRAMS handle the inbound IDOC and the data trasfer from the IDOC to the database tables.
NEED FOR ABAP PROGRAMMING arises if
1)New IDOC was created
Depending upon the triggering mechanism i.e change pointer,message control
etc the programming technique changes and the type of process.
2)Existing IDOC was extended
User Exits are used to populate data in new segments added and to read them
back.
3)To enhance an exsiting process.
User Exits are used .
Basic structure of an OUTBOUND PROGRAM
The basic structure of all outbound programs is same. The CONTROL
record which is of TYPE EDIDC has to be filled. It contains important fields like
IDOCTP IDOC type
MESTYP Message Type
RCVPRN Recieving Partner (Destination)
RCVPRT Partner Type (it is LS i.e Logical System)
The DATA RECORD internal table which is of TYPE EDIDD has to be filled
in the same order as there are segments in the IDOC definition.
It has 2 important fields which are to be filled ,these are
SEGNAM Name of the segment
SEGDATA Data in the segment and can be upto 1000 bytes.This field
is corresponds to each data segment in the IDOC.
e.g.
DATA INT_EDIDD LIKE EDIDD OCCURS 0 WITH HEADER LINE.
DATA W_SEGDATA LIKE zsegment "custom segment zsegment
INT_EDIDD-SEGNAM = 'ZSEGMENT'
W_SEGDATA-field1 = value "taken from some table
W_SEGDATA-field2 = value "taken from some table
INT_EDIDD-SEGDATA = W_SEGDATA
APPEND INT_EDIDD
This will fill the data record corresponding to the segment ZSEGMENT . For all
segments the sam steps will be repeated until all the data corresponding to all the
segments in the idoc is filled in the internal table of type EDIDD.
There is only one control record and can be multile data records in the idoc
structure.
Which data is to be extracted from the tables to be filled in EDIDD type internal table is determined in standalone programs from the objects which are specified in the selection screen and from the object key passed to the function module in case of message control and is taken from BDCP table in case of change pointers using function modules "CHANGE_POINTERS_READ"
In case of stand alone programs and function modules based on change pointers method the function module "MASTER_IDOC_DISTRIBUTE" is used to send the IDOC to ALE layer for distribution ,in case of message control it is handled automatically by the RSNASTED program invoked by the message control.
OUTBOUND PROCESS AND OUTBOUND PROGRAM
Outbound programs are used in outbound process to genearte IDOCs . There
purpose is to extract the data from the tables and to fill the IDOC data records
and the control record in the IDOC and pass ito the ALE layer for distribution to the recieving system .
Depending upon the triggering mechanism (how and when the outbound program will be started different techniques and interface is used for outbound program.
1)Message control
Application like PO(purchase order) creation use this technique , where the output type is linked to the application(Message control is a configurable cross application component which can be set in IMG .Such programs are created in the form of function modules and linked to the output type which is linked to the apllication.These have predefined interfaces.
In outbound programs(function module) that use message control the key of the
application document is passed to the function module whcig will read the data from the table depending upon the key passed(NAST structure) and fill the IDOC segemnts with the application data.The control record is also passed to the function module but is not fully filled, the rmaining fields are filled and the control is passed back to the calling program which is RSNASTED and is invoked by the
message control to process ALE and EDI output types and this program on recieving the IDOC data will create the physical IDOC in the system.
The parameteers passed to the function module are
IMPORTING PARAMETERS
OBJECT LIKE NAST
It contains documents key.
CONTROL_RECORD_IN LIKE EDIDC
It contains the partailly filled control record
EXPORETING PARAMETER
OBJECT_TYPE
CONTROL_RECORD_OUT LIKE EDIDC
TABLES
INT_EDID LIKE EDIDD
The internal table used to fill the data records in the same order as they exists in
the IDOC.
The important parameters that should be filled in the custom function module are
CONTROL_RECORD_OUT and INT_EDIDD .The OBJK field of the structue NAST contains the key of the apllication document.
2)Stand alone programs
Generally used for Master Data transfer and as such depending upon the requirement can have different interfaces.The programs have a selection screen which has select options to select the objects, and parameters for specifying the recipient Logical System and the Message Type.
Data is selected based on the specified objects from the tables . and control record of type EDIDC is created and filled with important values like DIRECTION ,IDOCTP,RCVPRT,RCVPRN and MESTYP .
Data is filled in an internal table of TYPE EDIDD according to segment definitions
and in same order and the function module MASTER_IDOC_DISTRIBUTE is called passing the control record and the internal table containg IDOC data and importing an internal table consisting of control records for each communication IDOCS created.
3)Change pointer
Change Pointer table is read and checked if changes were made to important fields , if so the outbound program will be triggered automatically , these have predefined interfaces
thanks
abdul
reward me if usefull -
Hi all
I am doing a scenario IDOC - Xi - IDOC where CRM sends an IDOC to R/3 via PI.
I have configured everything in OCC (CRM system), PI and BSC (R/3 system) but when I test it with the transaction WE19 in OCC nothing happens in PI or BSC.
All i can see if a message in SM58 transaction in OCC.
Function Module - IDOC_INBOUND_ASYNCHRONOUS
Target System - XI.
Status Text - No service for system SAPOCC, client *** in Integration Directory.
Could anyone tell me what is the problem.
Your help will be very much appreciated
Regards
NainaError message: No service for system SAPCRD client 201 in the integration directory
Cause: There is no service without party in PI server that represents OCC server with client details.
Solution:
We send IDocs from system OCC to PI. In the control record (Segment EDIDC40) of the IDoc, the SNDPOR (SenderPort) field contains the value "SAPCRD". The client of the sending system is determined by the MANDT field of the control record. The system ID and client are then used to determine a service without party of the type (business-system/business-service)
In System Landscape Directory (SLD) create a technical system for OCC system and assign a client for the same. Don't forget to assign an "ALE logical system" to the technical system created. Create a business system for this technical system. Then Business System can be imported under service without party/update the details existing in PI.
Edited by: Rodrigo Alejandro Pertierra on Jun 23, 2010 10:28 AM
Maybe you are looking for
-
Query performance based on condition value
Hi, I have a simple query which is actually on a view dwdb_dba.actl_partinfo_cust. Please see query bellow select * from dwdb_dba.actl_partinfo_cust WHERE insertdatetime=(select max(insertdatetime) from dwdb_dba.actl_partinfo_cust Where system_source
-
Pandora Radio problem on 3G iphone 2.0
I d/l the Pandora radio app yesterday and it played fine for awhile. Then last night up until today everytime I try to listen to it, the songs will play for like 4 seconds, then cutout for a second, then come back in and play for another 4 seconds be
-
Connecting tv :::
SAMSUNG LN22A450 - bought last autumn. HD MBP - version 10.4.6, 2.16 Ghz Intel Core Duo, 2006. i have a connecting wire going from the 'headphone' jack to external speaker system now, to listen to better sound while watching movies, and for digital m
-
Hey. My mail will not open. Any suggestions
Hey all. My mail wont start, and i can't not close my computer, it says that i have to close my mail program first.
-
Question about Trend Micro renewal...
My Trend Micro was just renewed this past weekend. It was all confirmed, etc. through Best Buy. When I go to my security status in Vista, it shows Firewall is on (green), Automatic Updating is on (green), but then is shows the Malware Protection