IDOC To XML Scenario
Hi all,
In my scenario I need to map fields of IDOC XML to a v complex and generic Enevelope ( XML ) <b>As well as send the entire IDOC XML as a string to one of the fields of the target Envelope XML</b> </b> Now wht is the best approach for mapping :
Java / XSLT ?
Is there any better simpler method to achieve this requiremnet ?
Thanks and Regards,
KLK
Attached is the code in Java Mapping
private InputStream payload ;
/* (non-Javadoc)
@see com.sap.aii.mapping.api.StreamTransformation#setParameter(java.util.Map)
public void setParameter(Map arg0) {
this.param = arg0;
if (param == null) {
this.param = new HashMap();
/* (non-Javadoc)
@see com.sap.aii.mapping.api.StreamTransformation#execute(java.io.InputStream, java.io.OutputStream)
public void execute(InputStream arg0, OutputStream arg1)
throws StreamTransformationException {
DefaultHandler handler = this;
try {
payload = arg0;
BufferedReader inp = new BufferedReader(new InputStreamReader(payload));
StringBuffer buffer = new StringBuffer();
String line="";
while ((line = inp.readLine()) != null) {
buffer.append(line);
source=buffer.toString();
if(source != null)
param.put("key1",source);
else
param.put("key1","Its Empty");
catch (Exception e){
e.printStackTrace();
Similar Messages
-
IDOC-XI-XML Scenario Questions
Hi everyone,
I am actually trying to configure a scenario starting from SAP and finishing creating a XML file.
R/3 IDOC -> XI -> XML file
The XI is receiving IDOCs from SAP correctly, but when it try to send to third party system, the monitor engine (SXMB_MONI) are showing the following error: HTTP_RESP_STATUS_CODE_NOT_OK.
I am currently using the File Adapter, please take a look at the config for the communication channel:
Adapter Type: File
http://sap.com/xi/XI/System
SAP BASIS 6.4
Transport Protocol: File Protocol(FTP)
Message Protocol: File
Adapter Engine: Integration Server
Target Directory: / (root)
File Name Scheme: mptest_xi_output.dat
File Construction: Create
Overwrite File: X
File type: Binary
Adapter Status: Active
Regards,
Gabriel SantanaIf you have enough authorization, then click on the last button which is change button.
Otherwise, open two windows of SAP and try to do the above step and when you get the authorization error, go to the second window and enter transaction /nSU53. Send that info to your security team.
Once you have authorization you should be fine.
One other thing, in which client you are doing this ?
Do not use DDIC user to change it.
regards
Shravan -
Mapping Problem in IDOC to XML scenario
hi,
In the target i have a tag which says:
Extrinsic 0..unbounded
name required
I have to map the above target to a source which comes from different IDOC segments.
E.g.
if E1EDP17.Qualf = '002' then map the E1EDP17.lktext to the "name"
if E1EDP17.Qualf = '001' then map the E1EDP17.lktext to the Extrinisc.
If data resides in other segments, how would i map those segments to the same output in xml.
Example:
<Extrinsic name="a">test</Extrinsic> -> this comes from E1EDP17 segment
<Extrinsic name="a">test</Extrinsic> -> comes from segment A
<Extrinsic name="a">test</Extrinsic> -> comes from segment B
How can i use a single Target to map from different sources if they are in different segments?
Any tips?
Thanks,
KP
Message was edited by: Tirumal Kumar PappuTirumal,
U will have to use comination of node functions like <b>exists</b> and <b>mapWithDefault</b>.
Are you sure that, E1EDP17.Qualf will have the value '002' or '001'.
There are some very good blogs on mapping by Sravya. Go through them and also go through the following link.
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm">sap help for Mapping</a>
Please reward if helpful -
Hi All,
I want to implement IDOC to XML SOAP scenario for 3 different IDOC types.
Should i implement it under same namespace or use different namespace for each IDOC to XML scenario.
Thanks,
VishalHi,
depends on your requirement and your XML SOAP receiver
there are no general rules
Regards,
Michal Krawczyk -
Regarding receiver determination problem in IDOC-XI-XML file scenario
Dear All ,
In IDOC-XI-xml file scenario , I have configured SLD , IR . But in ID , after file adapter , reciever agreement configuration when I am doing receiver determination configuration I am not able to insert mapping program in configuration overview of receiver determination as I am not getting "New Specific" option in mapping .
Can anybody suggest what could be the reason behind this .
Thanks in Advance
PrabhatHi PRabhat,
In RCVR determination, you need to select the party & service (as appropriate) save the obeject
then refresh the configuration overview of recr det.
then you can see the partner/service
then you can open it & add the necessary objects.
Regards
Vishnu -
How to eliminate empty tags in out put XML file in IDOC to File scenario
Hi Experts,
I am doing IDOC to File scenario.
My Out put XML is in to FTP is as below
<ITEMS>
<item>
<A>asdf<A>
<B>GHIJ<B>
</item>
<item>
<A>123<A>
<B>G098<B>
</item>
</ITEMS>
<ITEMS/> -
> Means no data
<ITEMS/> -
> Means no data
<ITEMS>
<item>
<A>yyy<A>
<B>zzz<B>
</item>
<item>
<A>arrr<A>
<B>Ghhh<B>
</item>
</ITEMS>
Now I want to eliminate tages <ITEMS/> in out out put XML file ( PIwhich writes in File server).
1) Is there any setting in communication channel to do this
2) Is there any settings in Mapping proram to suppress parent tag if child tags are not available.
I want output as below .
<ITEMS>
<item>
<A>asdf<A>
<B>GHIJ<B>
</item>
<item>
<A>123<A>
<B>G098<B>
</item>
</ITEMS>
<ITEMS>
<item>
<A>yyy<A>
<B>zzz<B>
</item>
<item>
<A>arrr<A>
<B>Ghhh<B>
</item>
</ITEMS>
Thanks,
Subbuitems->mapwithdefalut(just empty in the value)-> euqals(check with empty constant)->not->createif->target node
and make sure that as Ravi kanth said ...occurance is min is 0 at target side
Regards,
Prasad.
Edited by: PRASAD KONDA on May 21, 2009 1:50 PM -
IDOC to XML file scenario with party
Hi All,
I am developing a IDOC to XML file scenario with party in which I have extended the MATMAS idoc and configured the receiver FILE communication channel.
But its giving me the error *"No receiver could be determined"* with party. If I run the same scenario without the sender party its working fine.
And sender is my R/3 system under party P_Party and receiver is my third party system under P_Party.
Thanks in advance.
GaurangU can give a try as follows.
In the Partner Profile of Sender R/3 system,
Give the Receiver Party P_Party in the PartnerNo. Give the 'Business Partner' as logical System type.
In XI, Party Definition of P_Party
Give the following Alternative Identifier
Agency - Sender R/3 Business System
Scheme - ALE#GP
Value - P_Party -
ALE IDOC to XML IDOC scenario using XML port
Hi,
I am working on ALE IDOC to XML IDOC scenario using XML port . The requirement is to place a XML IDOC on the application server using ALE IDOC scenario ( output type is created in NACE which is ALE enabled ).
Can anybody help me on the steps.
Regards
Kumar
Moderator message: please search for available information/documentation.
Edited by: Thomas Zloch on Sep 8, 2011 6:01 PMU can give a try as follows.
In the Partner Profile of Sender R/3 system,
Give the Receiver Party P_Party in the PartnerNo. Give the 'Business Partner' as logical System type.
In XI, Party Definition of P_Party
Give the following Alternative Identifier
Agency - Sender R/3 Business System
Scheme - ALE#GP
Value - P_Party -
FIle Content Conversion Problem in IDOC-XI-File Scenario
Dear All,
I am doing IDOC-XI-FILE scenario.
I am facing one problem related to File Content Coversion.My requirement was to generate a dynamic file like <b>%store_code%_%current_date%_sitemaster.xml</b> , I have completed the dynamic generation successfully .
Now there is slight change in the requirement ,<b>we have to suppress the current_date node of the xml content</b> . i have tried to suppress the current_date using these <b>DATE.fieldFixedLengths 0 , Date.fixedLengthTooShortHandling Cut</b> , But I am unable to suppress it Can some body provide me the details on this .
The output xml version generated by Reciever file adapter is as below :
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT_SITE_MASTER xmlns:ns0="http://sample-xitest.com/sitemaster">
- <SITE_DATA>
<STORE_CODE>N002</STORE_CODE>
<TITLE_MEDI>Company</TITLE_MEDI>
<STORE_NAME>Mount Road</STORE_NAME>
<STREET>Chennai</STREET>
<COUNTRY>IN</COUNTRY>
<SALES_TAX_NO>12345678910</SALES_TAX_NO>
</SITE_DATA>
</ns0:MT_SITE_MASTER>
Plz provide me the code I have to write in the file content conversion .
Thanks in advance
Regards
PrabhatIf u see my earlier reply, I mentioned that u can not suppress the field from the one node.i.e Form SITE_DATA data type u can not suppress the field called CURRENT_DATE.
My suggestion is that , modify the Data type in such a way that you will be having two nodes as I have mentioned earlier. Then use the Suppress Logic for the Current Date.
So it will look like this-
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT_SITE_MASTER xmlns:ns0="http://sample-xitest.com/sitemaster">
- <SITE_DATA>
<STORE_CODE>N002</STORE_CODE>
<TITLE_MEDI>Company</TITLE_MEDI>
<STORE_NAME>Mount Road</STORE_NAME>
<STREET>Chennai</STREET>
<COUNTRY>IN</COUNTRY>
<SALES_TAX_NO>12345678910</SALES_TAX_NO>
</SITE_DATA>
<CURR_DATE>
<CURRENT_DATE>20051105</CURRENT_DATE>
</CURR_DATE>
</ns0:MT_SITE_MASTER>
So ur SITE_DATA is not having a field called CURRENT_DATE. This field is in separate node (segment ) called CURR_DATE. Now u can use the Suppress Logic for the same like this.
CURR_DATE.fieldFixedLengths - 0
CURR_DATE.fixedLengthTooShortHanling - Cut
And in your Variable Substitution you can use the date from the other segment called CURR_DATE.
Hope this solves ur problem.
Regards,
Moorthy -
Help needed in Idoc To File Scenario
Hi Experts,
My scenario is Idoc to File.
Here my job is to convert the purchase order idoc into xml file.
In this there are three conditions.
converting the standard PO into xml file
(ii) converting the PO with serial number into xml file
(iii) converting the PO using serial number with subcontracting into xml file
so what I feel is I need to create one scenario and based on the condition that particular PO will convert into xml file.
Conditions:
if no condition is specified then it is standard PO first case
(ii) if field tdline ne space then it is PO with serial number second case
(iii) if field pstyp eq 3 then it is PO using serial number with subcontracting third case.
Please guide how to do this scenario.
IR:
1) how many data types I need to create
2) how many message types I need to create
3) how many message interfaces I need to create
4) how many message mappings I need to create
5) how many message interfaces I need to create
ID:
1) how many receiver determinations I need to create
2) how many interface determinations I need create
3) how many receiver agreements I need to create
And where to write the conditions at message mapping level or at receiver determination level.
Kindly provide solution to every point.
Regards,
Venkat.1) if no condition is specified then it is standard PO first case
2) if field tdline ne space then it is PO with serial number second case
3) if field pstyp eq 3 then it is PO using serial number with subcontracting third case.
you have to create
1. outbound ( IDOC)
2. 3 Inbound (same MT)
create 3 mapping program each for 1 condition
create 3 interface mappings
ID:
1 reveri BS.
3 Interface determinations, so 3 receiver agrement.......
you can put the condition on the mapping or in the condition tab of the interface determinations. -
Why we dont need sender agreement and comm channel in IDOC to file scenario
Hi,
there are 2 queries:
first query :
Scenario is "Idoc to file transfer"
why we dont need sender agreement and communication channel for IDOC to file ,while we do need
both of these for "File to RFC "
Answer : which i got is because IDOC sits at ABAP stack but same is valid for RFC also.
Then why For "IDOC to file" we dont need that.
Second query:
Also when i did scenario for File1-RFC-File2 scenario using BPM i have created a interface
between XI-RFC synchronous to send data which we got from file1 in XI to RFC importing parameter
and getting data from RFC back to File2.
Here in IDOC to file scenario why we dont need any interfface for IDOC-XI Asynchronous.
Regards,
Mayank
Edited by: mayank verdia on Jan 13, 2009 11:49 AM
Edited by: mayank verdia on Jan 13, 2009 11:50 AMDear All,
For file to idoc scenario is there any possibility to get line items details or xml details i.e the segments and its related field details using reference id, transaction id or interface name or message id in SAP PI 7.0. I know we need to click each and every message in sxi_monitor and look for details.
For SAP(R3 System) I can create a report and set the job for specific time period so automatically it throws the details(like reference no, document date, invoice no from) in ftp path as .csv file. The same ftp path is maintained in program.
I wanted to check FTP--->PI postings and I have set the job at r3 system it is working fine and Im monitoring it too.
Now the end to end scenario is FTP--->PI--->ECC(R3 system). Please help.Many Thanks. -
Error in IDoc to file scenario
Hi Experts,
I am working on IDoc to File scenario.IDoc is sccessfully reached XI.In SXMB_MONI it is showing error in request mapping.Error is
<?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>XIServer</SAP:Category>
<SAP:Code area="MAPPING">JCO_SYSTEM_FAILURE</SAP:Code>
<SAP:P1>max no of 100 conversations exceeded / CPIC-CALL: 'ThSAPCMRCV' No memory availab</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>"SYSTEM FAILURE" during JCo call. max no of 100 conversations exceeded / CPIC-CALL: 'ThSAPCMRCV' No memory availab</SAP:Stack>
<SAP:Retry>A</SAP:Retry>
</SAP:Error>
Please suggest me in this issue.
Thanks,
Bhuvan.Check this link:
http://help.sap.com/saphelp_nw70/helpdata/EN/bb/ad1c3d2b058c4ce10000000a114084/
You might want to refer to the SAP NOTE: 316877
Regards,
Ravi -
ALEAUD in IDOC to File Scenario
Hi,
I have a IDOC to file scenario in which im sending the PAYEXT IDOC from SAP to a bank as the IDOC-XML.
ie the user will create a payment in the SAP system , this shoud trigger an IDOC to XI. XI puts the IDOC-XML sturcture into a FTP folder path from which the bank will pick it up. Now the bank has to send an acknowledgement(asynchronously) that the payment was processed. And this response should be captured and returned to the user.
can we use ALEAUD as the acknowledgement or does using ALEAUD make no sense here?Hi,
Assuming that the bank will send you a file to the FTP server you can simply pick up this file and mapi it to the Systat IDoc. I would assumt that the IDoc status's would not be in the file so you would have to do some value mapping or other logic to determine the IDoc status codes that you want.
The IDoc is very simple with few fields so the mapping should not be a problem.
Please note you do not use BPM for this scenario. In essence this would be a new flow of File --> PI --> IDoc
Import the STATUS.SYSTAT IDoc into the Design and play from there, you can make a POC now and test the functionality which would probably be best for you at this point.
Let me know if you need more details
Edited by: Alexander Ong on Jul 14, 2009 4:57 PM -
Alerts when the acknowledgement fails in IDOC to File Scenario
Hi All,
could you let me know how to handle Alerts for Idoc to File scenario.
My Scenario uses BPM as well.
Thanks,
SriniDear All,
For file to idoc scenario is there any possibility to get line items details or xml details i.e the segments and its related field details using reference id, transaction id or interface name or message id in SAP PI 7.0. I know we need to click each and every message in sxi_monitor and look for details.
For SAP(R3 System) I can create a report and set the job for specific time period so automatically it throws the details(like reference no, document date, invoice no from) in ftp path as .csv file. The same ftp path is maintained in program.
I wanted to check FTP--->PI postings and I have set the job at r3 system it is working fine and Im monitoring it too.
Now the end to end scenario is FTP--->PI--->ECC(R3 system). Please help.Many Thanks. -
Idoc-to-File Scenario ATTRIBUTE_INV_SND_SERV Error
Hi All,
I am working on PI 7.1. I have an Idoc-to-File scenario. The scenario is working fine, but there is an error
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_INV_SND_SERV</SAP:Code>
<SAP:P1>FILE_BC</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:Stack>Unable to convert the sender service FILE_BC to an ALE logical system</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
PI is trying to send an acknowledgment back to the Sender ECC system. But in the IDX_NOALE, 'Do not request acknowledgement' is already checked. Still there is this error. It doesnt show up in MONI unless the Acknowledgement message is clicked, but alerts are getting triggered for these cases. Can anybody please help me in resolving this? I do not want the acknowledgements to be sent back to the ECC system.
Thanks,
GeethaThanks everybody! It has got fixed. I just requested No acknowledgements.
Geetha
Edited by: Geetha on Nov 11, 2009 5:45 PM
Maybe you are looking for
-
Where is 'character' panel in PE 9
I had a problem with my fonts be locked in all caps. Clicking the reset buttons did not clear it. On the internet it said to open the 'character' panel and change it there but I couldn't find the character panel. It is not on the menu bar at the top
-
I don't know why this is happening. It was not damaged and I did not do anything out of the ordinary. I tried the 5rs, but nothing seems to be working. I even took it to work to get a windows machine to recognize the device and reformat it. but so fa
-
How can I allow pop-ups even after "Block pop-ups" is NOT checked?
When I'm on the Google Drive website (https://drive.google.com/) and I click Create > Document, I get the following message: "Firefox prevented this page from automatically redirecting to another page." My only options on the far right are "Allow", a
-
how to copy report list to internal table
-
ADF ignores font set in inputtext property
I have the following input text in a jspx page. I specified courier font using the drop down list in the property inspector in JDeveloper (11.1.2.1.0), no errors or warnings, but when I run the page the font is unchanged. Can anybody see why it's not