Document Purpose
This document provides steps required to load data in SAP using one of the SAP interfaces. This document will be used at the time of proof of concept to demonstrate the ability of Business Objects Data Services (BODS) to invoke IDOC interface to load data in SAP.
The main objectives are:
- Loading data in SAP using IDOC
- Demonstrate how BODS can be used to load data using IDOC
- Display required configurations step-by-step & invocation
- Demonstrate actual sample load using BODS job
Overview:
This document provides systematic approach for the data load in three sections:
- Configuration Required at SAP Side:
- Configuration Required at BODS Side:
- Demonstration Sample Load using BODS Job:
Each of above sections provide information as in how to configure the specific parameters required to get both SAP & BODS ready to communicate with each other. Screen shots provided for better understanding of the parameters & their configuration.
Configuration Required On SAP (ECC 6.0) Side
Following is the required configuration on SAP side.
1.Display IMG [ /nsale ]
Connect to SAP System using SAP GUI
Use Transaction Code (TCODE) /nsale to “Display IMG”
1: Display IMG screen
Expand Logical Systems tree & click on the Clock icon in front of “Define Logical System”
2. Defining Logical System
2: Defining Logical System screen
Click on the “New Entry” Button
For SAP Inbound IDOC One Logical system (FRMDICL100) is required
Create a Logical system as shown below
3. Overview of added entries
Click on the SAVE Button to save both the Logical System.
Verify that the LS FRMDICL100 is present in the SAP system
4. Overview of Logical Systems
3. Create Partner Profile [ /nwe20 ]
Use TCODE /nwe20 to configure partner profile.
5. Partner Profile screen
Click on Create button to create new partner profile
Create partner profile as shown below
Note :
- Provide partner no. “FRMDICL100 “ i.e same as BODS Logical System.
- Agent 50010120 “EDI Department” is necessary for communication with non-SAP systems like BODS. Without this agent IDOC communication will not be successful.
6. Partner Profile deatil screen
Click on the Save button to save the partner profile
After saving; the “Create Inbound parameter” will be activated in “Inbound paramtrs”
7. Partner Profile create Inbound paramtrs screen
Click on “Create Inbound parameter” in “Inbound paramtrs” section
8. Partner Profile Inbound parameters screen
Note :
In Inbound options tab, select appropriate process code relevant to message type.
(In this case; for MATMAS message type, process code is MATM)
In “Post processing : permitted agent” tab provide details as shown above.
Save “Partner profile: Inbound parameters” using Save button
After saving verify Partner Profile & Inbound Parameter added.
Configuration Required On BODS Side
Following is the required configuration on BODS side
1. Create SAP Datastores
Create SAP Datastore by providing required SAP Application Server Information & creadentials
11. SAP Datastore in BODS
Right click on IDOCs and select “Import By Name…”
12. IDOC list under SAP datastore in BODS
13. Import IDOC screen
Provide Type and Name as shown above and click on “Import” to import IDOC in data store
2. Generating input XML schema
To create the input XML structure with the correct datatypes quickly drop the IDOC as message source onto the dataflow, go into this object and right click the schema. There, you can ask the Designer to generate the entire structure as XML schema, thus you get all columns, schemas including the datatypes.
14. MATMAS01 IDOC screen
“MATMAS01_OUT” this XML file source is created using generated schema in“File Format” tab.
15. XML Schema screen
3. Build Batch Job
Build a Batch Job with a DataFlow inside…
Data Flow is as Follows
16: Batch Job screen
Double click on source XML File Source configure it as shown below.
Note: For demonstration purpose we have used XML file that was output of the Real-Time Job designed in article “Receiving IDOC In BODS from SAP”.
Important : Make sure that in XML file Sending Partner setting i.e. <SNDPRN> should be same as BODS logical system name. (FRMIDCL100) as shown below.
18: IDOC out XML file strucutre screen
Un-nest by right clicking on MATMAS01_OUT schema in “Query” as shown below
19: IDOC structre screen
Drag the IDOC MATMAS01 from SAP DataStore as shown
20. IDOC in SAP Datastore
Note: Make sure to select option “Make IDOC Message Target“
Configure “IDOC Message Target”
21. BODS side IDOC configuration
No images are displayed
very good article!!
Hi,
I am new to SAP BODS and follow above scenario steps but got an error when "Generate input XML Schema".
"The column name </CWM/TOLGM> contains an invalid first character"
Can you please help me how do I fix this error?
Thanks in advance
Hello Vas,
I had a similar issue, But finally I fixed it by removing the invalid schema reference in the XML Document. Check both the files
( XSD and also XML).
The below references might help you...
BODS error XML parser failed: See previously displayed error message
Create an XML Schema in BODS
Fetch XML data in BODS through URL
Thanks Selvaraj for sharing info but I want to keep those fields instead removing in xml document.
As per your recommendation, as I am getting following error when generate XML Schema and cannot able to generated XML Schema due to this error.
I believe those fields referencing from SAP ECC in different location? i.e., /CWM/
PFA screen shots for reference.
Vas,
Can you drill down into that particular column and tell me what type of data it contains?
Can you please guide me where can I see for above fields i.e., /CWM/TOLGR, TARA, TARLM?
FYI, I followed steps mentioned above.
Can you please tell me what type of data it is. to be exact can you please take a screen shot of the data and send me. mainly the data under the column /CWM/TOLGR, TARA, TARLM?
Hi All,
I tried the above steps and when i run the job it throws me error.
The file name is missing for the IDoc or XML file source. To restart, restart its job server.
and also when i try to generate the XML schema i am getting the same error.
Thanks
excellent article.
Hi Roshan,
Thanks nice explanation.
When I try to add Agent it shows error.
Please share your needful information.
Thanks,
Chandra
Hi Roshan,
Thanks for the article. Its really useful.
I am working in same kind of scenario. But in my case the Source XML file is not exactly in the same format of thr Target IDOC XML .
I am using XML_MAP transformation . After mapping the corresponding fields in XML_MAP transformation , if I unnest the structure its giving below error :
The input ports <Query> are not used in the XML_Map transform whose output schema is <XML_Map>. Please remove them, otherwise the transform will not run.
My data flow is attached in the image.
Please suggest me if my approach is wrong .
Thanks,
Antara
Hi Roshan,
Thank you very much for the article.
When I try to add Agent it shows error.
Could you please help me out on the same.
Thank you,
Raja
Hi Roshan,
Thanks for the valuable information and while trying to add the Agent am getting the following error
Thank you,
Raja
Hi Raja,
ID 500100120 is only created in author’s system but not in your own system. you can use any user id with proper privileges as post processing agent while choosing Ty(agent type) as US(User).
Regards,
Jerry
Hi ,
I have a doubt regarding IDOC load process.
For ex I forwarded 50 records from BODS to SAP system using Idoc.Now I will i check if they are loaded sucessfully or not?
Can Idoc have automatic/manual load by using some codes?
Could you help me with steps and screenshots? how to load data,test data etc? How to handle error records?
Thanks in Advance
Hi Team,
Can any one help on how we can check the records which are loading through BODS. Do we have any Tcode to check the same.
Regards,
Sudhir
We02