Mapping text in IDOC to IDOC scenario
Hi,
I have to map the source tdline field of IDOC segment E1EDPT1 to target IDOC Tdline field. Currently few tdline brings more than 31 chars but target should have only 31 and if it's more than 31 should roll over to next line.
I can able to truncate 31 chars using substring and if coneditions, but chars from 31 to rest couldnt be mapped, I tried a duplicate subtree in target and didnt work, used global variables to store the remainins but still didnt work.
Any suggestion would be greatly appreciated.
Thanks,
Menaga
Menaga,
Create a udf with name addnode and Queue as cache. Have one parameter as input:
Imports: java.;*
Add this code:
for (int i=0; i<input.length; i++)
String str=input<i>;
while(str.length()>31)
result.addValue(str.substring(0,31));
str=str.substring(31,str.length());
result.addValue(str);
Now map like this:
For e1edkt2:
tdline(change context to idoc) --> addnode udf --> e1edkt2
For tdline:
tdline --> removecontext --> addnode --> splitbyvalue --> tdline
Regards,
---Satish
Similar Messages
-
Doubt in fields - message mapping (file 2 idoc scenario)
while doing message mapping in file 2 idoc scenario, i could not able find the values for some field names
( i am following this wiki help
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/2007/05/11/fileToIDOC& )
cremas04 idoc
vendorNo LIFNR
vendor name Name1
Pur_org ? ( I could not able locate field with the similar desc in idoc MT side)
Company code ?
Acc_Grp ?
Search term MCOD1
Address ADRNR
City ORT01
Pin_code PSLTZ
could you help me out with this?
Message was edited by: praba
prabahi,
I got the answer. -
Mapping issue in idoc to JDBC scenario
mapping issue in idoc to JDBC scenario
source structure
E1KNB1M
BUKRS = 1000
E1KNB1M
BUKRS= 9000
E1KNB1M
BUKRS= 2000
THE NODE E1KNB1M is repeated many times and the field BUKRS is also repeated with E1KNB1M as above
TARGET field : ISFRANCHISE
if any where value of BUKRS =9000 we have to pass Y to the target filed, else N
if BUKRS = 9000 THEN ISFRANCHISE= Y
ELSE
ISFRANCHISE=N
I've done the mapping as below
BUKRS = 9000--> IF THEN Y ELSE N--
> ISFRANCHISE
BUT everry time the target value is N only
pl suggest
rgds
mojibmapped like this
BUKRS--->SORT---->
EQUALS --------IF---THEN Y
9000------------------------> ----------------->ISFRANCHISE
ELSE N
context of BUKRS set to parent node
its worked
thanks to all for valuable suggestions
rgds
mojib -
Mapping of Control records in file to idoc scenario
Hi,
In the mapping part of file to idoc scenario is it necessary to provide the exact control record details
or will it pick what ever is mentioned ? Can any one please explain regarding the same?
Many Thanks,
Sharathhi,
in case of apply control records from payload
It is indeed very simple to do it and the feature is available from SP10. I have seen lot of posts on the forum for the same and that is the reason for this blog. We can manipulate the control record in the mapping editor and map the EDI_DC40 segment of Idoc as required. Most of the times we need to map only SNDPRN, RCVPRN, SNDPRT, RCVPRT for posting Idocs with appropriate partner profiles in SAP R/3 destination systems. We can disable the rest of the fields as shown below. We need to manually change the control record of idoc for populating partner profiles in the control records while dealing with non-sap sender system, which will be used by receiver SAP system for posting idocs with appropriate ALE configurations.
check this blog
/people/sravya.talanki2/blog/2005/12/02/manipulating-idoc-control-records-from-payload
regards
chandra -
Mapping issue in jdbc to idoc scenario
Hi
we have a jdbc to idoc scenario , we need to repeat the segment given below which has only two fields FLDGRP and FLDVAL,
both filed_Group and fieldgroup1 is coming simultaneously . when field group =BATCH, batch=FLDVAL and fieldgroup1=CUST cust_code=FLDVAL
mapping is as follows :
E1WXX01 (segment name) occurance 0:9999999999
fieldgroup----
> FLDGRP
batch----
>FLDVAL
fieldgroup1----
>FLDGRP(same filed as above )
cust_code----
>FLDVAL(same filed as above)
pl sugggest how to map using graphical mapping
rgds
arunI see the problem here... hmmm.. It is simple
You need to just duplicate the E1WXX01 segment by right clicking and pressing Duplicate Subtree.
Once you do duplication of segment then you will have two segments of E1WXX01.
In first segment map
> fieldgroup----
> FLDGRP
> batch----
>FLDVAL
and in second segment of E1WXX0, map
> fieldgroup1----
>FLDGRP
> cust_code----
>FLDVAL
Regards,
sarvesh -
File to IDOC scenario : Error with mapping due to Context handling
Hi Experts.
I have a file to IDOC scenario which need your advice.
Source File structure as follows:
Control_Header <1:1>
Invoice_Header <1:unbounded)
Invoice_Line <1:unbounded)
Trailer <1:1>
Payload as follows capture from SXMB_MONI
- <Control_Header>
<Key>999</Key>
<TransactionID>RCTV</TransactionID>
</Control_Header>
- <Invoice_Header>
<Key>000</Key>
<BusinessUnit>HDB05</BusinessUnit>
<InvoiceNo>64471</InvoiceNo>
</Invoice_Header>
- <Invoice_Line>
<Key>001</Key>
<UnitPrice>7.00000</UnitPrice>
<Quantity>1.0000</Quantity>
<GSTAmount>0.49</GSTAmount>
<GSTRate>0.07</GSTRate>
</Invoice_Line>
- <Invoice_Line>
<Key>001</Key>
<UnitPrice>8.00000</UnitPrice>
<Quantity>1.0000</Quantity>
<GSTAmount>0.56</GSTAmount>
<GSTRate>0.07</GSTRate>
</Invoice_Line>
- <Invoice_Header>
<Key>000</Key>
<BusinessUnit>HDB21</BusinessUnit>
<InvoiceNo>6Y0575</InvoiceNo>
</Invoice_Header>
- <Invoice_Line>
<Key>001</Key>
<UnitPrice>49.50000</UnitPrice>
<Quantity>1.0000</Quantity>
<GSTAmount>3.47</GSTAmount>
<GSTRate>0.07</GSTRate>
</Invoice_Line>
- <Trailer>
<Key>TRL</Key>
<TransactionID>RCTV</TransactionID>
<TotalFeedLine>96</TotalFeedLine>
<HashTotalValue>212.00</HashTotalValue>
</Trailer>
</ns:MT_EINVOICE>
Mapping as follow:
IDOC
<Control_Header> -> <Control_Header>
<Invoice_Header> --> <Header_Invoice>
<Invoice_Line> ---> removeContext --> <Line_Invoice> this is the child node of <Header_Invoice>
<Trailer> -
> <Trailer>
The result of the using the above Payload get the following result which not wht I seek
<Control_Header>
<Header_Invoice>
<Line_Invoice>
<Line_Invoice>
<Line_Invoice> *** This belong to the Invoice_Line of the second <Header_Invoice> at the payload
<Header_Invoice>
<Line_Invoice> *** THis segment is empty
<Trailer>
I required the Line_Invoice to belong to the child of the second <Header_Invoice>, I have tried using
removecontext with splitVaue and collaspeContext but to no avail.
May I know what is my mistake on the mapping of the Invoice_Line to Line_Invoice>
Rgds
FNGHello,
There should be something that could correlate the Invoice_Header/Key and Invoice_Line/Key. In your example, both are the same for the first and data set. If the sample looks like the one below, it is possible to sort things by correlating the Invoice_Header key and Invoice_Line key
<Invoice_Header>
<Key>000<Key>
</Invoice_Header>
<Invoice_Line>
<Key>000<Key>
</Invoice_Line>
<Invoice_Line>
<Key>000<Key>
</Invoice_Line>
<Invoice_Header>
<Key>001<Key>
</Invoice_Header>
<Invoice_Line>
<Key>001<Key>
</Invoice_Line>
An example mapping could look like this
For Header
Invoice_Header --> Header_Invoice
For Line
/InvoiceLine/Key --> removeContext --> splitByValue:valueChanged --> Invoice_Line
The subfields of the invoice line would also follow a similar logic, you just need to use formatByExample --> splitByValue:eachValue so that the context levels are the same.
Hope this helps,
Mark -
Header Mapping in Idoc scenarios
What is the use of Header Mapping in IDOC based scenarios?
Hi,
Header maping can be used to determine the destination in the interface based upon any particular field .If the field is populated with the value then that value can be used for receiver determination to send message for example you have one file that can be mapped to any one pf the multiple IDOCs then based upon the header value you can determine the destination or the IDOC goin to be used
Ckeck this link this will help you a lot
reg:HEADER MAPPING
Check these links also
Header Mapping in File to IDoc
Header mapping while using IDoc as receiver communication
Thanks
Vikranth
Edited by: Khimavath Vikranth on May 28, 2008 9:30 PM -
IDoc to IDoc Scenario - Correct Interface Mapping configuration
Hello All,
i have to configure an Interface Mapping for an IDoc to IDoc scenario.
IDoc Type for sending and receiving already imported and located under Imported Objectes\IDocs in respective Software Component Version.
Now, how is the correct configuration? Add the sending respectively receiving IDoc Type directly to Source Interface/Target Interface under Display Interface Mapping or create first a sending Message Interface and a receiving Message Interface and add the IDoc type under configuration Message Types. Then add the Message Interface to the Interface Mapping.
The selection for direct import of the IDoc structure under the Interface Mapping (Source Interface/Target Interface) is possible.
Many Thanks in advanced!
Jochenhi,
for IDOCs (if you don't use a BPM)
you don't need any message interface
so if you have already created a message mapping
you can put the IDOCs directly to your interface mapping
then click on read interfaces
and select your message mapping program
if you want to learn more about IDOCs and XI
have a look at my book:
<a href="/people/michal.krawczyk2/blog/2006/10/11/xi-new-book-mastering-idoc-business-scenarios-with-sap-xi"><b>Mastering IDoc Business Scenarios with SAP XI</b></a>
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a> -
Mapping Error with Sender JDBC- Idoc scenario
Hi Guru's,
I've got a simple asyncronous sender JDBC to Idoc scenario, and I encounter a strange problem with the mapping.
When I test the mapping it works fine, but when I run the scenario, only the first element (a constant) of the Idoc gets mapped, and mapping stops with no errors.
Does someone know where to find the error?
Thanks,
KarstHi Karst,
There might be several reasons that you do not see the IDOC structures are not created/mapped:
1. Most of the IDOC structures are optional (minOccrs = 0), so you have to make sure the structure itself (not just the fields within that structure) is mapped to something that does exist in the source data.
2. Make sure your JDBC generated source data does have the right namespace as you used in your mapping. I once had a similar problem, but finally found the source data generated in run time is slightly different from the one used in mapping in terms of namespace.
3. Test your mapping with the source data generated in runtime (you can copy it from SXMB_MONI). Then you may be able to find the problem.
Hope this helps.
Hart -
File Content Conversion (FCC ) to IDoc Scenario
Hi All,
I have a Flat File to Idoc Scenario. Sample flat file looks as shown below.
A|20101001150207|SAPQMP|31|
B|5998|400858|2|N|20012010|MRGB0309S0030|
C|T0025|M0331||0.884||Inspection|1|No|Y||
C|T0001|M1556||Clear & bright ||QC|1|No|Y|Text|
C|T0050|M0341|6.0|6.5|7.0|QC|1|No|Y|Number|
C|T0010|M0360|0.279|0.341|QC|1|No|Y|Number|
C|T0062|M0360|0.112|0.137|QC|1|No|Y|Number|
C|T0056|M0373|7000|QC|1|No|Y|Number|
C|T0042|M0422|||-25|First Prod|1|No|N||
B|5998|400859|4|N|20012010|MRGB0309S0065|
C|T0025|M0331||0.896||Inspection|1|No|Y||
C|T0001|M1556||Clear & bright ||QC|1|No|Y|Text|
C|T0050|M0341|10.6|11.0|12.0|QC|1|No|Y|Number|
C|T0042|M0422|||-25|QC|1|No|Y||
C|T0010|M0360|0.279|0.341|QC|1|No|Y|Number|
B|5998|400859|4|N|20012010|MRGB0309S0065|
C|T0025|M0331||0.896||Inspection|1|No|Y||
C|T0001|M1556||Clear & bright ||QC|1|No|Y|Text|
C|T0050|M0341|10.6|11.0|12.0|QC|1|No|Y|Number|
Z|20101001150242|SAPQMP|31|
where Records A indicate File Header, Z indicates File Trailer
Recodrs B indicateds Material header and Would be repeating multiple times
No. of B Records = No. of Idocs generated with corresponding C records data which indicates Component Rows (multiple)
i.e as many B records file contains, that many Idoc will be created
For Mapping I require B and C Records. Field Separator is Pipe | symbol
I need to Ignore A B C Z
How to define the source structure and the respective FCC Parameters.
Regads,
VarunHi,
For Mapping I require B and C Records. Field Separator is Pipe | symbol
I need to Ignore A B C Z
two statements are ambiguous.
I assume u want only B and C records.
Since the structure is little complex, u can gat the whole record as a single element into Mapping and then u can take only those u want to access and map.
MT_Name
Records
Data(0..unbounded)
Now in Data u have all the records.
If you dont want at all these A and Z records to come to mapping(IE) then u need to go for a small adapter module.
Deploy it and use in the modules sequence...
Babu -
SOAP-IDOC scenario- HTTP 500 error
Hi All,
We are working on SOAP- IDOC scenario.
We are getting a request from Sender which should come via Reverse Proxy server to PI.
We generated WebService on PI and the URL(X) is shared with Proxy team, wherein they mapped that URL (X)with other URL(Y). This URL (Y)is shared to sender and he is trying to send some requests now.But below is the error message.
[09/02/13 15:26:12] ID=app01 (trace) Delivered HTTP Direct outbound message, containing details...
Destination URL=https://XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
User=ZZZZZZZ
Status Code=500
[req]Content-Length=7148
[req]X-HTTPS-ClientAuthCertificate=/AAAAAAAAAAAAAAAA
[req]X-HTTPS-ClientAuthCertificateForm=PKCS12
[req]Authorization=Basic RjRGSU5GWEQxMDA6c3luZ2VudGEx
[req]X-HTTPS-CACertificatePath=/BBBBBBBBBBBB
[req]X-HTTPS-PrivateKey=/CCCCCCCCCCCCCCCCC
[req]JMSReplyTo=sga.ws.test.response
[req]messageuniqueid=6d65d89f-ffff-ffc0-00ee-3aa7032c3299
[req]adpnextmlemarkersequence=3
[req]X-HTTPS-PrivateKeyPassword=ZZZZZ[maid
[req]Content-Type=text/plain
[resp]content-type=text/xml; charset=utf-8
[resp]set-cookie=saplb_*=(SERVERNAME)226695750; version=1; path=/
[resp]set-cookie=saplb_*=(SERVERNAME)226695750; version=1; path=/
Any ClueHi,
Check this
HTTP 500
o Internal error in J2EE
o Check SAP Note 807000 - Http requests are not fully read
after timeout
Regards,
Sreenivas -
Hello Friends,
I am facing an issue during File To IDOC Scenario.
Sender side: Text file
It contains data:
name,surname,7894561230 i.e. phone no.
My sendor data type is also desined in same way.
I am facing given below wrror in SXMB_MONI.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Request Message Mapping
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>Application</SAP:Category>
<SAP:Code area="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>
<SAP:P1>com/sap/xi/tf/_mm_file_to_idoc_</SAP:P1>
<SAP:P2>java.lang.NullPointerException</SAP:P2>
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>java.lang.NullPointerException thrown during application mapping com/sap/xi/tf/_mm_file_to_idoc_:</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
In sendor file adaptor I am using 'File' as message protocol.
Should I have to use 'File content Conversion'.
I tested message mapping. It is working fine.
Kindly suggest me for above error. How I can resolve it?
Regards,
NarendraIt contains data:
name,surname,7894561230 i.e. phone no.
java.lang.NullPointerException thrown during application mapping com/sap/xi/tf/_mm_file_to_idocc
In sendor file adaptor I am using 'File' as message protocol.
Should I have to use 'File content Conversion'
can you tell in what format is your source structure? I mean is it an XML or a CSV file?
If it is a CSV file then you need FCC....but then in this case the error should have been thrown by the channel itself and the message wont have come till mapping step....
If your source file is really in csv format then apply FCC....many blogs, references are readily available on SDN.
Regards,
Abhishek. -
Reg:Steps in IDOC Scenario
Hi,
I am very new to IDOC concept so can anyone tell me what is the use and why do we want to create,
1)RFC Destination
2)Port
3)Logical sysytem name
4)Partner Profile ,in IDOC Scenario and also let me know the steps that I have to implement while doing that scenario.
Thanks in advance
B.LavanyaHi,
This is complete step by step document for configuring the idoc to file scenario along with ALE Settings
To Configure the IDOC TO FILE SCENARIO,PROCEED AS FOLLOWS
STEP 1:ALE SETTINGS TO POST IDOC OUT OF SAP R/3
We need to do the following settings in XI
1) Create an RFC Destination to the Sending System in transaction code (SM59)
a) Choose create
b) Specify the name of the RFC destination
c) Select connection type as 3 and save
d) In the technical settings tab enter the details SAP SID/URL and system number#
e) Enter the Gateway host as same details above SID/URL
f) Gateway service is 3300+system number#
g) In the Logon /Security tab, enter the client user & Password details of Destination system
h) Test the connection and remote logon.Both should be succesful
2) Create Port Using Transaction Code IDX1
a) Select create new button
b) Enter the port name as SAP+SID (The starting char should be SAP)
c) Enter the destination client
d) Enter the RFC Destination created in SAP R/3 towards other system
e) Save
3) Load Meta Data for IDOC Using transaction Using Transaction (IDX2)
a) Create new
b) IDOC Message Type
c) Enter port created in IDX1
SETTINGS IN SAP R/3
We need to do the following settings in R/3
Logon to Sap R/3 System
1) Create an RFC Destination to XI in transaction code (SM59)
a) Choose create
b) Specify the name of the RFC destination
c) Select connection type as 3 and save
d) In the technical settings tab enter the details SAP SID/URL and system number#
e) Enter the Gateway host as same details above SID/URL
f) Gateway service is 3300+system number#
g) In the Logon /Security tab, enter the client user & Password details of Destination system
h) Test the connection and remote logon.Both must be succesful
2) Create communication Port for Idoc processing Using Transaction(We21)
a) First Select Transactional RFC and then click create button
b) Enter the destination port name as SAP+SID (The starting char should be SAP)
d) Enter the RFC Destination created in SAP R/3 towards other system.
e) Save
3) Create Partner Profile with Outbound Parameters (WE20)
a) Create New
b) Create the Partner no. name as same the logical system name of the destination system
c) Select Partner type LS
d) Enter details for Type: US/USER, Agent, and Lang
Then Save
e) Select Partner no. and LS which were create above
f) Now we have to give some Outbound Parameters.So click on ADD TO Create Outbound Parameter
g) Select Message type
h) Double click on Message Type and Then Enter the details for Receiving port, Pack size=1 and Basic type
I) save
4) In Transaction SALE, Create Logical System
a). Go to Basic Settings-> First Define logical systems
and then assign logical systems
b) Double click on Define the logical systems
c) Give data for your Logicaal System and Name
d) Now click on Save.Here one window may appear just click on Continue.Now the Logical System name is ready
e) Assign the logical system name to the client
5) Create Customer Distribution model in the transaction code BD64
1) Click on the Create modal View button and enter the short text, Technical name etc as shown below
2) 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
3) Save the Distribution model
Generate Partner Profiles
Click on 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
4) Distribute Customer Distribution Model
In the menu item GO to Edit->Modal View-> Distribute to the destination client
Popup window appears ,press Enter
You will be intimated about the the Modal View Distributed
Step2:Repository
1) From the Integration Builder page, select Integration Repository. This will launch the Java Web Start Application. Log with the User id and password from the Integration Server
2) Choose Tools->Transfer from System Landscape Directory->Import Software Component Versions
From the list of Software Component Versions, Choose your own software component version .Click Import.
3) On the left hand side frame ,software components will appear .Select your own software component. Open your own software component. Double click on this software component. A screen will appear .Switch to display mode. After doing this first add a namespace under Namespaces.
Your NameSpace is urn : DSZVFGD
4) Then choose the Radio Button ->Import of RFC AND IDOC interfaces from SAP systems permitted
After this specify the connection parameters to the R/3 system:
4.1) System :SAPFOX
4.2) Client :800
Then Save it. The new namespace will be visible under software component version node in the left frame.
Under the namespace node, you will find the section Imported Objects. Right click on it and choose Import of sap objects. A wizard will display. In the wizard provide the following details.
4.3) Application server:172.25.5.7
4.4) System number:00
4.5) User name: DEVELOPER
4.6) Password: Password of Sap R/3 system.
Then click continue .You will find IDOC node. Click on this node and select the Idoc which is to be imported from R/3. Click Finish to start the Import. Close the wizard. After doing this the Idoc will be available into XI as Message types. So no need to create any Idoc Structure. We need to create a structure for file only.
5). Under your namespace in the left frame, expand the node Interface objects. You will find a node DATA TYPES
6) Create new data types.
6.1) Right click on Data types and select New.
Your Data Type is :DT_FILE
In the data type Editor ,Create a structure having Elements of type String , integer, Boolean , Float etc as per the requirement.
Save the object.
6.2) The Import function for XSD files enables you to upload message definitions from external sources. The object type External Definition is a container to make external definitions available in the Integration Repository.. While Importing the XSD files from External Definition
no need to create Data types. They are imported directly as Message types.
6.3) To do so, In the left hand frame Under Interface objects Create a new object of type External Definition and give name to it.
Select the following.
6.3.1) Category: XSD.
6.3.2) Messages: From All Available Global Elements.
6.3.3) File:
Once the XSD is imported, click on Message tab , You should be able to see 2 messages(Request and Response)
7). Create a new Message Type.
7.1) In the left hand frame under Interface objects, right click on the Message types and select new.
7.2) Give a suitable name to the Message type.(MT_ messagetype).
7.3) For the section Data type used you can go to input help (F4) or Search help provided and choose your data type (DT_datatype) from there.
Save it.
8). Create a Message interface
8.1) In the left hand frame under Interface objects, right click on the Message Interface and select new and name(MI_ messageinterface) it
8.2). The interface Should be Inbound and mode should be Asynchronous .It should reference your Message type(Use F4 or Search help).
Save it.
9) . Create a graphical mapping between the target document and the sender .
9.1) In the left hand frame ,expand Mapping objects. Right click on Message mapping and name it.You are now in a graphical editor.The Source message is on left, the Target message is on right.
9.2) As Source message select your own Idoc .You can choose Search for Integration Object.As a reminder you can find your Idoc or Rfc under Software Component- > Namespace->Imported Objects.
9.3) As Target Message you can choose your Message type .Choose Search for Integration Object.
9.4) Now that we have defined the Source and Target message, we can start defining the Mapping rules.
9.5) Map the fields of Source document to the equivalent fields in Target document .This can be achieved easily by locating the field in Target document and then Drag and Drop the Source fields to the respective Target Fields.
Save It.
9.6) You can also Test your Mapping by selecting the 'Test Tab'.
9.7) Fill in the values in the Idoc fields and click 'Start Transformation'. On the right hand side you will see Target Document populated with the appropriate Values.
10). Create an Interface Mapping.
10.1) In the left hand Frame expand Mapping objects. Right Click on Interface Mapping and Name it. You are in a Interface Mapping Editor .Assign the following References.
10.2) Source interface : Your Outbound Interface (The Source document(Idoc) interface).You can Choose Search for Integration Object.
10.3) Target interface: Your Inbound Interface( The Target document interface).
Then Select 'Read Interface' and Assign your 'Mapping Program' .
Mapping Program: Your Message mapping.
Then Save it.
11.) Finally , in the left hand frame ,go to your change list and Activate it
STEP 3: Directory
1) From the Integration Builder page, select Integration Directory. This will launch the Java Web Start Application. Log with the User id and password from the Integration Server.
Create a Scenario Object
2). The First Step is to create a Scenario Object
This will serve as container for all your configuration work. Create and save a scenario object
3) In the left hand frame you can see the created scenario object. Under that Object Expand the node Service without Party and right click on Business System->Assign Business System
4) In the wizard , leave the party name blank and then select your own Business System. Uncheck the box Create Communication Channel Automatically.This service (business system) represents the legacy system and Sap R/3 which will be exchanging the data.
5) . Create a Communication Channel.
6). Expand your service and right click on Communication Channel. Name your Communication Channel
Here we need to configure the adapter.
Since The Sender is IDOC , then there is no need of Sender communication channel and Sender Agreement.
For the Receiver, Specify the following Parameters
6.1 For the adapter type , use the F4 help and select FILE.
6.2 Specify Receiver since the adapter will be sending XML files from XI to the FTP server.
6.3 Specify the following parameters.
Transport Protocol: File Transport Protocol.(FTP)
Message Protocol: File Content Conversion(since the xml file produce by XI need to be converted to text file)
Adapter Engine: Integration Server
For the File system access Parameters, enter the following
Source Directory:VILAS
File Name: Input.txt
6.4 For the FTP Connection Parameters, Specify the Following
Server: 172.25.7.116
Port: 21(by default)
Data Connection: Passive
Connection security: None
Connection Mode: Permanently
Transfer Mode: Binary
6.5 For Processing Parameters, Specify the following
File construction mode: Add Time Stamp
File Type: Binary
6.6 For Content Conversion Parameters, Specify the Following
RecordSet Structure:
Adapter Status: Active
The receiver file adapter is now configured. Save your Communication Channel.
Create an Receiver Determination.
7). From the left frame Create a new Receiver Determination object. This is the main part of routing process, where you assign a receiver for your message.
7.1) Select your sender service and interface.
Sender:
Party: blank
Service: Sender service(Business system)
Interface : Sender interface
7.2) In the Configured Receivers area , choose the Service for the Target System.. Save your Receiver Determination
Create an Interface Determination.
7.3) Next create an Interface Determination object. Now that we have defined a receiver of message ,we need to assign an Inbound interface and an Interface mapping
7.3.1) In the Receiver Determination you just created, have a look at the area Configuration Overview for Receiver Determination at bottom of your screen and press Refresh for that the Business system you assigned is displayed in that area as well.
7.3.2) In the column Receiver(Partner/Service) open the details by clicking the node .The Entry Not defined shows you that there is no interface determination present.
Right click on the Entry Not defined and select New specific, in order to create a new interface determination object
7.3.3) You are now in the screen Edit Interface Determination. In the section Configured Inbound Interfaces select the Inbound Interface using F4 help Provided. You might need to choose ALL button for the interface to be shown.
After choosing the Inbound Interface, It is shown in the Interface Determination
7.3.4) A mapping has to be specified .Use the F4 help next to Inbound Interface to select your Interface Mapping.
7.3.5) When you are done , Save the Interface determination object.
8.) Create a Sender Agreement.
In the left hand frame , right click on Sender Agreement ->New
8.1) Specify the following:
Party: blank
Service: Select your own Business system
Interface: Outbound Interface
8.2) In the screen Edit Service Agreement use F4 help for the Sender Communication channel field .Select your Communication channel .Save and close
9.) Create a Receiver Agreement.
Finally you will create a 'Receiver Agreement' .This will allow you to assign a Receiver Communication Channel to the receiver service/Interface you have chosen.
9.1) Go back to the main screen for your receiver determination. In the area Configuration Overview for Receiver Determination at the bottom of your screen click Refresh.
9.2) In the Column Receiver Agreement(Communication Channel) right click and select New Specific.
Specify the following:
Party: blank
Service: Select your own Business system
Interface: Inbound Interface
9.3) In the screen Edit Receiver Agreement for the field Receiver Communication Channel use the input help F4 and select your communication channel. Save and Close it
Your Configuration is complete. Activate the objects.
PLZ REWARDS POINTS
VIKAS -
Change FILE to IDOC by HTTP to IDOC scenario
Hi !!!
We have a txt FILE to IDOC scenario.
Now we want to implement a HTTP to IDOC scenario, but taking advantage of the mappings existing and avoid re-implement it. The HTTP calls must contain the text of the actual FILE.
What is the best way to do it?
How convert a txt FILE in a XML?Hi, Bhavesh
Rigth? Not exactly... I assume I need to create new receiver determination and to make some changes in integration directory (like message interface, message mapping), but if it's possible, i want to avoid changes in message mapping
In fact, I have more than one scenario (orders, stocktaking, cash up, bank information... ) and therefore, some complicated message mapping. This is the main reason to evaluate the best solution.
In your proposal... ¿How test if first imput is a XML or a TXT? ¿When and how call the java code?
Thank you in advance,
Carme -
** HTTP 401 Unauthorized - IDoc to IDoc scenario
Hi Friends,
I am doing IDoc to IDoc scenario. For the sender side I am using XI adapter instead of IDoc Adapter. Because, we don't have access of third party source (SAP) system. We take the source payload from message mapping and test the same in RWB --> Component Monitoring --> Integration Server --> Adapter Engine XD1 --> Test Message Tab.
After give all the sender details, when I test the scenario, it throws the following error 'Error while sending message; invalid content type for SOAP; TEXT/HTML; HTTP 401 Unauthorized'.
What could be the problem ? Could you kindly tell me friends.
Kind Regards,
Jegathees P.Hi
Check Pipeling entry in SLD
SLD -> Business System -> Open your XI business system and check for the pipeline entry there.
It should be http://server:httpport/sap/xi/engine?type=entry
Check also this blog for HTTP 401 Error
Http* Errors in XI
Maybe you are looking for
-
Error in File Adapter: no alert generated
Hi folks, I have a problem with monitoring our file adapters. In one scenario we occasionally get the following error: Fehler bei der Konvertierung des Dateiinhalts in XML an Position 0: java.lang.Exception: ERROR converting document line no. 2 accor
-
Cash Discount has become unrestricted
Dear Experts, I have configured cash discount through payments term route. I have also maintained the SKTO condition in SD in pricing procedure. The issue is that while clearing (F-32) the system is accepting whatever discount we are entering. It is
-
Vbscript using Manufacturer to run a program install
Hello, I'm new to scripting and was looking for assistance on my attempt to use a vbscript to install a program based on manufacturer detected. Basically, I would like to have the script detect if it is a Dell or an ASUS system then depending on what
-
Streaming Radio using Realplayer
Hi! Am new here so please be kind! I have an iBook, using realplayer to stream BBC RADIO 1, for some reason it doesnt work at al, it stutters, stops and starts and simply doesnt play - so far I have checked using wireless and also with a patch cable,
-
Change the value of order Person Responsible in bapi_alm_order_maintain
Hi Expert, I want to change the value of person responsible in order Tab. and also i want change Person Responsible for multiple order . How can i change .... please write code.