RE:idoc inbound scenario "mapping issue"
Hi experts,
we r facing the problem in idoc inbound scenario, while to generate multiple idoc's.
we need to generate the idoc's based on two fields, Location_code and Date. If any of the field is changing we need to generate the new idoc.
below is the sender payload :
<row>
<Date>20100111</Date>
<Sign>+</Sign>
<Tender_Code>ZSHT</Tender_Code>
<Tender_Amount>1890.30</Tender_Amount>
<Location_Code>0000001000</Location_Code>
</row>
<row>
<Date>20100112</Date>
<Sign>+</Sign>
<Tender_Code>ZSHT</Tender_Code>
<Tender_Amount>1890.30</Tender_Amount>
<Location_Code>0000001000</Location_Code>
</row>
<row>
<Date>20100112</Date>
<Sign>+</Sign>
<Tender_Code>ZSHT</Tender_Code>
<Tender_Amount>1890.30</Tender_Amount>
<Location_Code>0000001001</Location_Code>
</row>
<row>
<Date>20100112</Date>
<Sign>+</Sign>
<Tender_Code>ZSHT</Tender_Code>
<Tender_Amount>4532.32</Tender_Amount>
<Location_Code>0000001001</Location_Code>
</row>
for the above payload ,we need 3 idocs as below
idoc1:
Location_code>1000 Date->20100111
idoc2:
Location_code>1000 Date->20100112
idoc3:
Location_code>1001 Date->20100112
under the third idoc fourth row should get repeated.
at present we have the following mapping which is generating multiple idocs bsased on only location code, it's like
Location_code-->removecontext-->sort-->splitbyvalue(valuechange)-->collapsecontext--->idoc
rgds
selvam
Hi,
Thanks Suraj , logic has worked but there is a simple issue , LOCATION_Code is mapped with SNDRPRN and RCVPRN of the EDI_DC40 segment when i m execuiting the payload it throws error for the second idoc generated , when the LOCATION_CODE changes this should also get updated to that field. Mapping for SDNPRN has been done like this.
LOCATION_CODE --->removecontext-->|
formatbyexample--->SNDRPRN
idoc mapping logic---------------->|
pl suggest...
rgds
selvam
Similar Messages
-
XI 3.0 - XML - IDOC inbound scenario via ftp UTF-8 character encoding
Hi Everyone,
I'm having difficulties with a particular scenario. I receive via the ftp adapter xml files which have a header indicating UTF-8 coding. In SXMB_MONI, i see the cyrillic characters and after mapping the target message payload as well have readable cyrillic characters. The problem comes when i have the SAP-side check the idoc that posted in their system. They see gibberish (i.e ##### #### ### #').
I have already tried changing the XSD definition of the xml to UTF-8 however upon import it automatically changes it to ISO-8859-1. I've tested sending the xml file to XI with an ISO-8859-1 coding header and in SXMB_MONI it's gibberish as well. So i've elminated that from possible problems.
i have checked SM59 on the receiving system and unicode is checked as well.
where could the problem possibly be?
Thank you,
KentHi,
Thank you for the quick reply. however that did not solve it. I believe the Cyrillic character set lies in the UTF-8 set. i mentioned about the ISO to elmiinated its possibility and the problem i face when importing an XSD definition as it automatically changes the encoding to that set. I have confirmed that it should be UTF-8.
I have isolated the problem to between the XI box and the SAP receiving box. in SXMB_MONI, up to the call adapter part, the payload shows the correct characters. upon checking it in the receiving system at tcode "we02", the value is all gibberish. -
IDOC:inbound scenario for posting Message type ORDRSP
Hi All,
I am doing a inbound scenraio to post message type ORDRSP.
Acknowledgement gets created in Purchase order successfully but texts at header level and item level are not getting updated in the purchase order
I am using the segment E1EDKT1 and E1EDKT2 for header texts . For item texts I am using the segments E1EDPT1 and E1EDPT2.
Any pointers to this is appreciable.
Thanks in advance.Hi,
Depending on whether the Order is a third party order are not, the texts are picked up from either SO or PO.
Put a break point on line 842 in the Include LEINMF11 and debug, this should help you get to the root cause of the issue.
Regards,
Chen -
DESADV.DELVRY03 idoc to XML Mapping issue.
Hello Experts,
I am facing a problem in Mapping of an idoc DESADV.DELVRY03 with the given XML file.
Please suggest me how to map E1ADRM1/E1ADRE1/EXTEND_D with qualifiers such as RG,AG,WE.
Please help me out.
If step by step document will be provided then it would be a great help.
I will appreciate every helpful suggestion.
Thanks,
Dipen.Hi Dipen,
Please follow the basic mapping functions and find my bellow Mapping Logic may its help you.
Regards,
Rajendar K -
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 -
Production Time Issues on IDOC---File Scenario
Hi All,
We have done all the IDOC--File scenarios Successfully in DEV System.
Now its time to Production and Go-Live.
Q1) Assume If Bulk messages are Failed in RWB-----Receiver CC Due to some error, Then how to Handle these Error messages
Regards
SumanHi Mahesh,
This is My Trace File
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
<Trace level="1" type="B" name="IDX_INBOUND_XMB" />
- <!-- ************************************
-->
<Trace level="1" type="T">User: 116866</Trace>
<Trace level="1" type="T">Language: E</Trace>
<Trace level="1" type="T">ALE-AUDIT-IDoc-Inbound Handling</Trace>
<Trace level="1" type="T">IDoc-Inbound-Handling</Trace>
<Trace level="2" type="T">Tunneling needed?</Trace>
<Trace level="2" type="T">Partytype = LS fallback to logical system</Trace>
<Trace level="3" type="T">Sender Interface</Trace>
<Trace level="3" type="T">WP_PLU.WP_PLU03 urn:sap-com:document:sap:idoc:messages</Trace>
<Trace level="1" type="T">Syntax-Check-Flag X</Trace>
<Trace level="1" type="T">IDoc-Tunnel-Flag</Trace>
<Trace level="1" type="T">Queueid</Trace>
- <Trace level="1" type="B" name="IDX_IDOC_TO_XML">
<Trace level="1" type="T">Get the Metadata for port SAPPIS</Trace>
<Trace level="2" type="T">----
</Trace>
<Trace level="2" type="T">IDX_STRUCTURE_GET Details</Trace>
<Trace level="2" type="T">Port : SAPPIS</Trace>
<Trace level="2" type="T">IDoctyp : WP_PLU03</Trace>
<Trace level="2" type="T">Cimtyp :</Trace>
<Trace level="2" type="T">RFCDest :</Trace>
<Trace level="2" type="T">Release : 700</Trace>
<Trace level="2" type="T">Version : 3</Trace>
<Trace level="2" type="T">Direct : 1</Trace>
<Trace level="2" type="T">SAPREL : 700</Trace>
<Trace level="2" type="T">----
</Trace>
<Trace level="1" type="T">Convert Segment-Definitions to Types</Trace>
<Trace level="1" type="T">Make Syntax check of actual Idoc</Trace>
<Trace level="2" type="T">----
</Trace>
<Trace level="2" type="T">IDX_SYNTAX_CHECK</Trace>
<Trace level="2" type="T">Port : SAPPIS</Trace>
<Trace level="2" type="T">IDoctyp : WP_PLU03</Trace>
<Trace level="2" type="T">Cimtyp :</Trace>
<Trace level="2" type="T">----
</Trace>
<Trace level="2" type="T">Create XML-Control Record</Trace>
<Trace level="2" type="T">Create XML-Data Records</Trace>
<Trace level="3" type="T">Create data Record E1WPA01</Trace>
<Trace level="3" type="T">Create data Record E1WPA02</Trace>
<Trace level="3" type="T">Create data Record E1WPA03</Trace>
<Trace level="3" type="T">Create data Record E1WPA04</Trace>
<Trace level="3" type="T">Create data Record E1WPA05</Trace>
<Trace level="3" type="T">Create data Record E1WPA04</Trace>
<Trace level="3" type="T">Create data Record E1WPA05</Trace>
<Trace level="3" type="T">Create data Record E1WPA04</Trace>
<Trace level="3" type="T">Create data Record E1WPA05</Trace>
<Trace level="3" type="T">Create data Record E1WPA07</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
<Trace level="3" type="T">Create data Record E1WXX01</Trace>
</Trace>
<Trace level="2" type="T">party-scheme: ALE#KU</Trace>
<Trace level="1" type="T">party normalization error: scheme = ALE#KU</Trace>
<Trace level="2" type="T">Set Sender Routing-object</Trace>
<Trace level="1" type="T">Set Receiver Routing-object</Trace>
<Trace level="1" type="T">Exit Function IDX_INBOUND_XMB</Trace>
<Trace level="1" type="T">COMMIT is expected by application !</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-SET_START_PIPELINE" />
- <!-- ************************************
-->
<Trace level="3" type="T">XMB was called with external pipeline PID = ENTRY</Trace>
<Trace level="3" type="T">Getting type of XMB...</Trace>
<Trace level="1" type="B" name="SXMBCONF-SXMB_GET_XMB_USE" />
<Trace level="2" type="T">XMB kind = CENTRAL</Trace>
<Trace level="3" type="T">Start pipeline found</Trace>
<Trace level="2" type="T">Switch to external start pipeline PID = CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV">
<Trace level="3" type="T">No triggers found. OK.</Trace>
</Trace>
<Trace level="1" type="T">****************************************************</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">XMB entry processing</Trace>
<Trace level="3" type="T">system-ID = PSX</Trace>
<Trace level="3" type="T">client = 100</Trace>
<Trace level="3" type="T">language = E</Trace>
<Trace level="3" type="T">user = 116866</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:15:27Z INDIA</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">****************************************************</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_UC_EXECUTE" />
- <!-- ************************************
-->
<Trace level="1" type="T">Message-GUID = 481ADC34F6CF1214E1000000AC10100D</Trace>
<Trace level="1" type="T">PLNAME = CENTRAL</Trace>
<Trace level="1" type="T">QOS = EO</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_ASYNC" />
- <!-- ************************************
-->
<Trace level="3" type="T">QOS = EO</Trace>
<Trace level="3" type="T">Message-GUID = 481ADC34F6CF1214E1000000AC10100D</Trace>
<Trace level="1" type="T">Get definition of external pipeline = CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
<Trace level="3" type="T">External PLID = CENTRAL</Trace>
<Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
</Trace>
<Trace level="1" type="T">Get definition of internal pipeline = SAP_CENTRAL</Trace>
<Trace level="3" type="T">Generate prefixed queue name</Trace>
<Trace level="1" type="T">Queue name : XBTI0001</Trace>
<Trace level="1" type="T">Generated prefixed queue name = XBTI0001</Trace>
<Trace level="1" type="T">Schedule message in qRFC environment</Trace>
<Trace level="3" type="T">Setup qRFC Scheduler</Trace>
<Trace level="1" type="T">Setup qRFC Scheduler OK!</Trace>
<Trace level="3" type="T">Call qRFC .... MsgGuid = 481ADC34F6CF1214E1000000AC10100D</Trace>
<Trace level="3" type="T">Call qRFC .... Version = 000</Trace>
<Trace level="3" type="T">Call qRFC .... Pipeline = CENTRAL</Trace>
<Trace level="3" type="T">OK.</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Going to persist message</Trace>
<Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
<Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
<Trace level="1" type="T">- Exit CALL_PIPELINE_ASYNC</Trace>
<Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="3" type="T">Version number = 000</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="3" type="T">Persisting message Status = 001</Trace>
<Trace level="3" type="T">Message version 000</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
<Trace level="1" type="T">--start sender interface action determination</Trace>
<Trace level="1" type="T">select interface WP_PLU.WP_PLU03*</Trace>
<Trace level="1" type="T">select interface namespace urn:sap-com:document:sap:idoc:messages</Trace>
<Trace level="1" type="T">no interface found</Trace>
<Trace level="1" type="T">--start receiver interface action determination</Trace>
<Trace level="1" type="T">Loop 0000000001</Trace>
<Trace level="1" type="T">select interface *</Trace>
<Trace level="1" type="T">select interface namespace</Trace>
<Trace level="1" type="T">no interface found</Trace>
<Trace level="1" type="T">--no sender or receiver interface definition found</Trace>
<Trace level="1" type="T">Hence set action to DEL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE">
<Trace level="3" type="T">Trace object available again now. OK.</Trace>
<Trace level="3" type="T">Message was read from persist layer. OK.</Trace>
<Trace level="3" type="T">Message properties in XMB object were setup. OK.</Trace>
<Trace level="3" type="ToDo">Make sure we catch exceptions in persist read</Trace>
<Trace level="3" type="ToDo">Tracing obj. not avail. before return of CL_XMS_MAIN-PERSIST_READ_MESSAGE</Trace>
</Trace>
<Trace level="3" type="T">message version successfully read from persist version= 000</Trace>
<Trace level="2" type="T">Increment log sequence to 001</Trace>
<Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
<Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
- <!-- ************************************
-->
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
<Trace level="3" type="T">system-ID = PSX</Trace>
<Trace level="3" type="T">client = 100</Trace>
<Trace level="3" type="T">language = E</Trace>
<Trace level="3" type="T">user = 116866</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
<Trace level="3" type="T">External PLID = CENTRAL</Trace>
<Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
</Trace>
<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline attributes</Trace>
<Trace level="3" type="T">PID = SAP_CENTRAL</Trace>
<Trace level="3" type="T">ENABLE = 1</Trace>
<Trace level="3" type="T">TRACELEVEL = 0</Trace>
<Trace level="3" type="T">EXEMODE = A</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline elements</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_RESPONSE</Trace>
<Trace level="3" type="T" />
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA Begin of pipeline processing PLSRVID = CENTRAL</Trace>
- <Trace level="1" type="B" name="PLSRV_RECEIVER_DETERMINATION">
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA Start of pipeline service processing PLSRVID= PLSRV_RECEIVER_DETERMINATION</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_RD_PLSRV</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_RD_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">R E C E I V E R - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
<Trace level="2" type="T">Start with given receiver C086 -</Trace>
<Trace level="2" type="T">Classic Receiver Determination via Rules.</Trace>
<Trace level="2" type="T">Check conditions for rule line no. 1</Trace>
<Trace level="2" type="T">...valid Receiver w/o Condition: - BS_Soap_Service_Qty</Trace>
<Trace level="2" type="T">No Receiver found behaviour: 0</Trace>
<Trace level="2" type="T">Number of Receivers:1</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA End of pipeline service processing PLSRVID= PLSRV_RECEIVER_DETERMINATION</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 001</Trace>
<Trace level="3" type="T">Message version 001</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
</Trace>
- <Trace level="1" type="B" name="PLSRV_INTERFACE_DETERMINATION">
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA Start of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_ID_PLSRV</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_ID_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">I N T E R F A C E - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
<Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) BS_Soap_Service_Qty MI_POS_Itemmaster_OB</Trace>
<Trace level="2" type="T">...valid InbIf without Condition: MI_POS_Itemmaster_OB</Trace>
<Trace level="2" type="T">Number of receiving Interfaces:1</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA End of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 002</Trace>
<Trace level="3" type="T">Message version 002</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
</Trace>
<Trace level="1" type="B" name="PLSRV_RECEIVER_MESSAGE_SPLIT" />
- <!-- ************************************
-->
<Trace level="1" type="Timestamp">2008-05-05T13:16:48Z INDIA Start of pipeline service processing PLSRVID= PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_RECEIVER_SPLIT</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
<Trace level="1" type="B" name="CL_XMS_PLSRV_RECEIVER_SPLIT-ENTER_PLSRV" />
- <!-- ************************************
-->
<Trace level="3" type="T">Case handling for different plsrv_ids PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="2" type="T">got property produced by receiver determination</Trace>
<Trace level="1" type="T">number of receivers: 1</Trace>
<Trace level="1" type="T">Single-receiver split case</Trace>
<Trace level="1" type="T">Post-split internal queue name = XBTO0___0002</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Persisting single message for post-split handling</Trace>
<Trace level="1" type="T" />
<Trace level="1" type="T">Going to persist message + call qRFC now...</Trace>
<Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
<Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
<Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="3" type="T">Persisting message Status = 012</Trace>
<Trace level="3" type="T">Message version 003</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE">
<Trace level="3" type="T">Trace object available again now. OK.</Trace>
<Trace level="3" type="T">Message was read from persist layer. OK.</Trace>
<Trace level="3" type="T">Message properties in XMB object were setup. OK.</Trace>
<Trace level="3" type="ToDo">Make sure we catch exceptions in persist read</Trace>
<Trace level="3" type="ToDo">Tracing obj. not avail. before return of CL_XMS_MAIN-PERSIST_READ_MESSAGE</Trace>
</Trace>
<Trace level="3" type="T">message version successfully read from persist version= 004</Trace>
<Trace level="2" type="T">Increment log sequence to 005</Trace>
<Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
<Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
- <!-- ************************************
-->
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
<Trace level="3" type="T">system-ID = PSX</Trace>
<Trace level="3" type="T">client = 100</Trace>
<Trace level="3" type="T">language = E</Trace>
<Trace level="3" type="T">user = 116866</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
<Trace level="3" type="T">External PLID = CENTRAL</Trace>
<Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
</Trace>
<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline attributes</Trace>
<Trace level="3" type="T">PID = SAP_CENTRAL</Trace>
<Trace level="3" type="T">ENABLE = 1</Trace>
<Trace level="3" type="T">TRACELEVEL = 0</Trace>
<Trace level="3" type="T">EXEMODE = A</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline elements</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_RESPONSE</Trace>
<Trace level="3" type="T" />
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA Begin of pipeline processing PLSRVID = CENTRAL</Trace>
<Trace level="1" type="T">Start with pipeline element PLEL= 5EC3C53B4BB7B62DE10000000A1148F5</Trace>
- <Trace level="1" type="B" name="PLSRV_MAPPING_REQUEST">
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA Start of pipeline service processing PLSRVID= PLSRV_MAPPING_REQUEST</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_MAPPING_XMS_PLSRV3</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV">
<Trace level="2" type="T">......attachment XI_Context not found</Trace>
<Trace level="3" type="T">Mapping already defined in interface determination</Trace>
<Trace level="3" type="T">Object ID of Interface Mapping C5523ABE7D9A35BDABE2082468D67E41</Trace>
<Trace level="3" type="T">Version ID of Interface Mapping 1FB1D8C0010B11DD9AB1F535AC101018</Trace>
<Trace level="1" type="T">Interface Mapping http://sub-sapretail-pos.com/Itemmaster IM_POS_Itemmaster_OB</Trace>
<Trace level="3" type="T">Mapping Steps 1 JAVA com/sap/xi/tf/_MM_POS_Itemmaster_multi_OB_</Trace>
<Trace level="3" type="T">Dynamic Configuration ( http://sap.com/xi/XI/System/IDoc SNDPOR SAPPIS ) ( http://sap.com/xi/XI/System/IDoc SNDPRN PISCLNT900 ) ( http://sap.com/xi/XI/System/IDoc SNDPRT LS ) ( http://sap.com/xi/XI/System/IDoc RCVPOR A000000015 ) ( http://sap.com/xi/XI/System/IDoc RCVPRN C086 ) ( http://sap.com/xi/XI/System/IDoc RCVPRT KU ) ( http://sap.com/xi/XI/System/IDoc MESTYP WP_PLU ) ( http://sap.com/xi/XI/System/IDoc IDOCTYP WP_PLU03 ) ( http://sap.com/xi/XI/System/IDoc CIMTYP )</Trace>
<Trace level="2" type="T">Mode 0</Trace>
<Trace level="3" type="T">Creating Java mapping com/sap/xi/tf/_MM_POS_Itemmaster_multi_OB_.</Trace>
<Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._MM_POS_Itemmaster_multi_OB_</Trace>
<Trace level="2" type="T">Java mapping com/sap/xi/tf/_MM_POS_Itemmaster_multi_OB_ completed. (executeStep() of com.sap.xi.tf._MM_POS_Itemmaster_multi_OB_</Trace>
<Trace level="3" type="T">Dynamic Configuration ( http://sap.com/xi/XI/System/IDoc RCVPOR A000000015 ) ( http://sap.com/xi/XI/System/IDoc SNDPRT LS ) ( http://sap.com/xi/XI/System/IDoc RCVPRN C086 ) ( http://sap.com/xi/XI/System/IDoc SNDPOR SAPPIS ) ( http://sap.com/xi/XI/System/IDoc SNDPRN PISCLNT900 ) ( http://sap.com/xi/XI/System/IDoc CIMTYP ) ( http://sap.com/xi/XI/System/IDoc IDOCTYP WP_PLU03 ) ( http://sap.com/xi/XI/System/IDoc MESTYP WP_PLU ) ( http://sap.com/xi/XI/System/IDoc RCVPRT KU )</Trace>
<Trace level="1" type="T">ContentType application/xml</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA End of pipeline service processing PLSRVID= PLSRV_MAPPING_REQUEST</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 005</Trace>
<Trace level="3" type="T">Message version 005</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
</Trace>
- <Trace level="1" type="B" name="PLSRV_OUTBOUND_BINDING">
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA Start of pipeline service processing PLSRVID= PLSRV_OUTBOUND_BINDING</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_OUTBINDING</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
- <!-- ************************************
-->
- <Trace level="1" type="B" name="CL_XMS_PLSRV_OUTBINDING-ENTER_PLSRV">
<Trace level="2" type="T">O U T B O U N D - B I N D I N G</Trace>
<Trace level="2" type="T">Cache Content is up to date</Trace>
<Trace level="2" type="T">determine OUTBOUND BINDING for:</Trace>
<Trace level="2" type="T">-Subhiksha_PIS_subprd1</Trace>
<Trace level="2" type="T">-BS_Soap_Service_Qty</Trace>
<Trace level="2" type="T">http://sub-sapretail-pos.com/Itemmaster.MI_POS_Itemmaster_OB</Trace>
<Trace level="2" type="T">Channel found: - BS_Soap_Service_Qty - CC_POS_Itemmaster_OB_Qty</Trace>
<Trace level="2" type="T">no header mapping defined</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA End of pipeline service processing PLSRVID= PLSRV_OUTBOUND_BINDING</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 006</Trace>
<Trace level="3" type="T">Message version 006</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
</Trace>
<Trace level="1" type="B" name="PLSRV_CALL_ADAPTER" />
- <!-- ************************************
-->
<Trace level="1" type="Timestamp">2008-05-05T13:18:58Z INDIA Start of pipeline service processing PLSRVID= PLSRV_CALL_ADAPTER</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV" />
- <!-- ************************************
-->
<Trace level="3" type="T">Calling pipeline service: PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">PLSRVTYPE = =SWITCH=</Trace>
<Trace level="3" type="T">ADRESSMOD = SD</Trace>
<Trace level="3" type="T">P_CLASS =</Trace>
<Trace level="3" type="T">P_IFNAME =</Trace>
<Trace level="3" type="T">P_METHOD =</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Unknown channel type: SOAP</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">PLSRVTYPE = AENGINE</Trace>
<Trace level="3" type="T">ADRESSMOD = SD</Trace>
<Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_IE_ADAPTER</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
- <!-- ************************************
-->
- <Trace level="1" type="B" name="CL_XMS_PLSRV_IE_ADAPTER-ENTER_PLSRV">
<Trace level="3" type="T">Channel for adapter engine: SOAP</Trace>
- <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-CALL_XMS_HTTP">
<Trace level="2" type="T">return fresh values from cache</Trace>
<Trace level="2" type="T">Get logon data for adapter engine (SAI_AE_DETAILS_GET):</Trace>
<Trace level="3" type="T">URL = http://psxprd:51000/MessagingSystem/receive/AFW/XI</Trace>
<Trace level="3" type="T">User = PIISUSER</Trace>
<Trace level="3" type="T">Cached = X</Trace>
<Trace level="3" type="T">Creating HTTP-client</Trace>
<Trace level="3" type="T">HTTP-client: creation finished</Trace>
<Trace level="3" type="T">Security: Basic authentication</Trace>
<Trace level="3" type="T">Serializing message object...</Trace>
<Trace level="3" type="T">HTTP-client: sending http-request...</Trace>
<Trace level="3" type="T">HTTP-client: request sent</Trace>
<Trace level="3" type="T">HTTP-client: Receiving http-response...</Trace>
<Trace level="3" type="T">HTTP-client: response received</Trace>
<Trace level="3" type="T">HTTP-client: checking status code...</Trace>
<Trace level="3" type="T">HTTP-client: status code = 200</Trace>
<Trace level="3" type="T">Deserializing message object...</Trace>
<Trace level="3" type="T">HTTP-client: closing...</Trace>
</Trace>
</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 007</Trace>
<Trace level="3" type="T">Message version 007</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
</Trace>
<Trace level="3" type="System_Error">Error exception return from pipeline processing!</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="3" type="T">Persisting message Status = 014</Trace>
<Trace level="3" type="T">Message version 008</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
</SAP:Trace>
Regards
Suman -
Hallo Everybody,
In one of the requirements,for the interface design which involves IDOC-FILE scenario we have a req as:-
Multiple IDOCs would be sent from SAP R/3 to SAP XI. Each IDOC can have 0-4 segments and for each segment a file needs to created.
The files needs to be FTPed to a location, only if all the IDOCs have been processed successfully.
Requirement:
1) Even if a single IDOC fails,the files should not be FTPed. --> How do we handle this in XI.
2) We need to send a notification from XI, in case any IDOC processing fails.
3) How do we check in XI, if all the IDOCs have been processed successfully.
Please suggest me with some good stategies to resolve this issue.
Appreciations and Rewards in line.
Regards,
YounusHi
Are you planning to use BPM as it suits your requirement.
To collect the idocs in small bunches refer
Collecting IDocs without using BPM
1) Even if a single IDOC fails,the files should not be FTPed. --> How do we handle this in XI.
BPM will allow you to wait for the time all IDOC are processed
2) We need to send a notification from XI, in case any IDOC processing fails.
BPM exception handling will allow this functionality even to the exact field you want to send notification
3) How do we check in XI, if all the IDOCs have been processed successfully.
Set Acknowledgment for IDOC's
refer
Posting multiple IDocs with Acknowledgement
Thanks
Gaurav -
Issues in IDoc Sender Scenario:IDoc with errors added
Hi all
Am working on an IDoc to JDBC scenario. In R/3 system, I have created distribution model, partner profile, RFC destination and port.The IDoc is generated and is sent to XI successfully. But in XI , there is no entry in SXI_MONITOR for this (unfortunately IDX5 is not available in the XI server! ;as of now). Instead an entry is made in WE05 and WE02 with stautus 56(IDoc with errors added). In the status record:
status 56 : External segment name E2KOMG003 cannot be interpreted
status 60 : Basic IDoc type COND_A03 could not be found.
And the segments displayed in data record are different from the segments in the data record of the IDoc generated at R/3. (say for E1KOMG at R/3, E2KOMG003 in XI).Earlier the flow was working fine and the DB table was updated successfully. And the entire stuff is believed to be 'unmodified' .
Would any one help in resolving the issue.
Thanks,
ChilankaHi,
>>>>I have created partenr profile in R/3.Need I create a partner profile in XI for R/3 system?
no you cannot create any partner profiles in XI
for more about IDOC configuration in XI check :
<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> -
IDOC to EDI Seeburger Mapping Issue
Hi,
I am new to seeburger, Currently I am working on PAYEXT IDOC to EDI scenario using seeburger adapter.
As per my little knowledge i can understand that i need two step mapping:
1) IDOC XML to EDI XML
2) EDI XML to EDI
Now the problem is how can i do 1st mapping if i have to do 1:1 mapping in PI mapper than it will be a tedious task as I dont know which idoc field is mapped to which EDI XML field.
Also i dont know how i can map the 2nd mapping.
when we installed seeburger adapter than i got three files from basis guys related to PAYEXT
msg_PAYEXT_UN_D96A.xml
msg_XML_PAYEXT_UN_D96A.xml
XML_PAYEXT_UN_D96A.xsd
Note: I imported .xsd file in IR, but i dont know what to do with these xml files.
Please experts reply soon as it is delaying my project
Regards,
ShradhaShradha,
You can check the seeburger software component versions where all the mappings would be provided by Seeburger as part of the package.
You can have a look whether PAYEXT is there and would be useful
To start with
1. You need a functional or EDI Business analyst to guide you on the various mapping specifications needed.
2. You should also liase with your business partners to prepare an business rules and other conditions.
3.Also decide whether you are going to deliver it via AS2 communication or via VAN
4. Accordingly you need to configure the seeburger adapters.
5.The mappings provided to you are from XML to EDI and EDI to XML which is a second stage automatically done by seeburger once you specify the module steps in the comms channel.
I am afraid that without knowing business rules or mapping specifications, you can't work on EDI.
Regards
Krish -
Need help on Inbound Delivery - Mapping from IDoc to LIKP Table
Hi,
For the DESADV IDoc (Inbound Delivery) we are currently mapping data to the LIKP table for a subset of fields via function module INPUT_IDOC_DESADV. If I wanted to map the ABLAD - Unloading Point field from the IDoc to the LIKP - ABLAD - Unloading Point field is this possible and if yes, what work would be required?
And could you please let me know how to find out an user exit for the message type? (message type = desadv)Hi Murphy,
Try this custom function '002'.
CALL CUSTOMER-FUNCTION '002'
EXPORTING
xekko = ekko
xlfa1 = lfa1
xlfb1 = lfb1
dobject = object
TABLES
int_edidd = int_edidd
xekpo = xekpo
xeket = xeket
dvbak = xvbak
dvbap = xvbap
dvbkd = xvbkd
EXCEPTIONS
error_message_received = 1
data_not_relevant_for_sending = 2.
Hope this will help.
Regards,
Ferry Lianto -
File - XI - Idoc : mapping issue
Hello gurus,
I have a mapping issue:
I have a mapping between FICABillingNotification to FKK_EBS_DOC_TREE
Some fields are mapped one to one, others a mapped to constants.
But for some reason i don't know, not all fields get the right value.
For example:
Working:
Constant 1 --> BEGIN
Constant LS --> RCVPRT (Receiver Partner Type)
Not working:
Constant FILE-->RCVPOR (Receiver Port)
I had an other value the first time i tried it, but now i changed it to FILE but this value is not used by the mapping.
Any help would be welcome
Thanks
Thomas
Edited by: Thomas Pary on May 28, 2008 3:36 PMThis was allready done (sorry i didn't answered that question).
But Ok now i see, that for this RCVPOR the value of the constant "FILE" is mapped, and i can see it in the payload in SXMB_MONI after the mapping. But it isn't populated to the IDoc field :-s
Another problem is, that like the one said above, some of my values are not mapped :
<FICAExternalBilling>
--<DocumentHeader> mapped to EF1KK_EBS_DOC_HEADER
<BillFromId>25001254</BillFromId> mapped to REF_DOC_NUMBER
<PostingDate>20080520</PostingDate> mapped to POST_DATE
<DocumentDate>20080520</DocumentDate> mapped to DOC_DATE
<OriginTypeId>IV</OriginTypeId> mapped to EXT_DOC_TYPE
<ObjectType/>
<ObjectKey/>
<PendingCommitmentGroupID/>
<InvoiceReferenceID/>
<DisputeDocumentReferenceID/>
--</DocumentHeader>
The value of OriginTypeId is not mapped, but the value of DocumentDate and PostingDate are mapped. -
Mapping Issue: Target IDoc structure not getting created properly
Hi Experts,
I am stuck with a strange problem in my mapping. It is a M:N scenario mapping where we have multiple IDocs in source as well as in target.
For example, in source Queue-1 I am getting values as [SUPPRESS, true, true, true, true] and in the in source Queue-2 I am getting the values as [1,2,3,4,5]. I used MapWithDefault function to match the number of values in both the queues but in the target IDoc the node (say TMPN) is created only 4 times because of the condition put at the target node. So, the target node should have values as [1,2,3,4] but it gets values as [2,3,4,5] because the first target TMPN node is not created in the first target IDoc. I can provide you with the skeleton of the map. Hope this will give you a fair idea. Let me know if you require more details.
1. Target Structure:
IDoc - No TMPN Node
IDoc - 1 TMPN Node
IDoc - 2 TMPN nodes
IDoc - 1 TMPN node
Condition put on target TMPN_Node ---> (created only 4 times due to condition)
2. Mapping Skeleton:
Values coming from Q1 (SUPPRESS, true, true, true, true) --->
\===>FORMATBYEXAMPLE+SPLITBYVALUE==> TMPN-F0 [2]
/ TMPN-F0 [3]
Values coming from Q2 (1,2,3,4,5) -
> TMPN-F0 [4]
TMPN-F0 [5]
Where F0 is the field which is created when TMPN Node is created. So, if TMPN gets created 6 times, the F0 gets created 6 times.
Please let me know if there is an alternative to this problem. How can I have values as [1,2,3,4] in field F0 instead of [2,3,4,5]hi,
i got the email.
as i can see your mapping seams to be rigth, but there is sometrhing i dont get. in a previuos post you said:
I am stuck with a strange problem in my mapping. It is a M:N scenario mapping where we have multiple IDocs in source as well as in target.
For example, in source Queue-1 I am getting values as SUPPRESS, true, true, true, true and in the in source Queue-2 I am getting the values as 1,2,3,4,5. I used MapWithDefault function to match the number of values in both the queues but in the target IDoc the node (say TMPN) is created only 4 times because of the condition put at the target node. So, the target node should have values as 1,2,3,4 but it gets values as 2,3,4,5 because the first target TMPN node is not created in the first target IDoc. I can provide you with the skeleton of the map. Hope this will give you a fair idea. Let me know if you require more details.
1. Target Structure:
IDoc - No TMPN Node
IDoc - 1 TMPN Node
IDoc - 2 TMPN nodes
IDoc - 1 TMPN node
lets asume you define as default value "1"
now, the result of the formatByExample taking the example you sent to me is:
1,T1,T2,T3,T4 without context change. and the result of the function splitByValue should be what you are specting.
but its something that is not clear still,
could you post the result of the mapWithDefault? i think your problem is there.
Rgds
RP-. -
XSLT mapping issue in parent child relation
Hi Guys,
i have one XSLT mapping issue. Mapping scenario is from IDoc to file.
IDoc structure is as below
<ZLOIPRO1>
<E1AFKOL>
<A></A>
<B></B>
<E1RESBL>
<MATNR>1</MATNR>
<CHARG>1</CHARG>
<ZSBL>
<MTART>ABC</MTART>
</ZSB>
</E1RESBL>
<E1RESBL>
<MATNR>2</MATNR>
<CHARG>2</CHARG>
<ZSBL>
<MTART>ZHA1</MTART>
</ZSB>
</E1RESBL>
<E1RESBL>
<MATNR>3</MATNR>
<CHARG>3</CHARG>
<ZSBL>
<MTART>ZHA1</MTART>
</ZSB>
</E1RESBL>
</E1AFKOL>
</ZLOIPRO1>
As you can see 'E1RESBL' is repeatative. Now my issue is i need to select 'MATNR' and 'CHARG' from 'E1RESBL' segment when first occurance of 'ZSBL/MTART' with value 'ZHA1' appears. i.e. my output would be MATNR = 2 and CHARG = 2.
I hope i am clear. Please let me know if any solution for this.Hi,
Try this
<xsl:if test="./ZSBL/MTART == 'ZHA1'">
<xsl:for-each select="./E1RESBL">
<MATNR>
<xsl:value-of select="./MATNR"/>
</MATNR>
<BATCH>
<xsl:value-of select="./CHARG"/>
</BATCH>
</xsl:for-each>
</xsl:if>
You might need to do some changes in the above.
Thanks,
Prakash -
Mapping issue - if value matches on of several conditions
Hi champs,
I have a mapping in PI 7.1 of an invoice-xml to a INVOIC02-idoc.
I am mapping the invoice sums to E1EDS01-segments and just want to map five of several qualifiers. So I have set up a mapping for the qualifier field SUMID that just maps those five qualifiers, and map the SUMME-field from inbound message as it is.
Now it shows that our vendors send more than those five qualifiers I have in my mapping. Since I don´t have any control of the SUMME-field all seven values get mapped into the Idoc (generating seven E1EDS01-segments), but only the five segments with my mapped SUMID get the SUMID-field. So I get in total seven E1EDS01 segments in which I get only the SUMME in two of them.
So my question is: Are there any pretty ways to handle this kind of mapping issues besides using a lot of equalS, if and or?
I would like to be able to say (in as simple a function as possible) that if qualifier in field A is X, Y or Z then map the value in field B to SUMME. How do I do that? BTW I am not a java-programmer so advanced java-codes are not a good way for me to handle it.
regards,
GlennWrite an UDF with this code:
public void <UDFNAME>(String <FieldName>,Container container){
If (<FieldName> == "X" || <FieldName> == "Y" || <FieldName> == "Z"){
return <FieldName>;
Edited by: spantaleoni on Mar 16, 2011 4:04 PM -
Inbound scenario using tRFC - serialization
Hi Guys,
I have the following scenario:
An external System is communicating with SAP using tRFC queue.
So from the SAP perspective this is an inbound scenario.
I am wondering if the sequence of the IDocs that are attached to the tRFC queue by that external system
is kept while they get processed on the SAP side.
To say it in other words: Will SAP process the IDOcs in the same sequence as they were attached to the RFC queue before?
So if there is a communication error will be the sequence kept after communication is established again?
Or do I have to build the timestamp serialization - what I want to avoid as the ALE input function module doesn't provide this.
Thanks a lot.
AchimHi Dheeraj,
the challenge with the "map the TLOG and create WPUUMS Idoc" is that inside the TLOG you are getting receipt based data. But for the WPUUMS IDOC you'd be expecting to see aggregated information.
The better and recommended way to integrate SAP POS with SAP Retail is to use the delivered standard integration with the following two data streams:
1. SAP Retail master data (e.g. articels, prices, promotions) to SAP PI to SAP POS
2. SAP POS - Transnet - SAP PI - SAP POS DM - SAP BW/SAP Retail
The advantage would be that aggregation is handled in POS DM and you have all the detail available in SAP BW and that you will be able to utilize the data collected for other processes as well.
Please check the Wiki for POS Integration which will give you a good overview about the integration and covered scenarios:
https://wiki.sdn.sap.com/wiki/display/CK/ExchangeInfrastructure-SAPPOS+Integration
For SAP POS DM you will find a wiki here:
https://wiki.sdn.sap.com/wiki/display/Retail/SAPPOSDM%28SAPPoint-of-SaleDataManagement%29
Additionally there are two courses focussing on this topics:
Integration: W26TGI
POS Data Management: W26POS
Kind regards,
Stefan
Maybe you are looking for
-
Saving all action in database with triggers
Hi I have oracle database 11gR2 . I dont have eny permission in datbase auditing,scn and ..... . I want to save all changes in database . i have 3 tables : tables , columns ,rowaction . in tables , saving name of all tables , in columns , saving name
-
How does one create a GROUP mailing list from an e-mail message ? ?
I am having no end of frustration trying to figure out - using the latest versions of Apple Mail and Apple Address book in side-by-side windows, t he following: How to select; then 'drag & drop' a list of email addresses from an incoming email messag
-
How to use the character encoding model to use ' �' in java
hi I have to use the special characters like '�' using java.but when '�' character is transferred to data base or is displayed in my form,it is shown as '?'.but i need to display the original characters in the form of what it is. what can i do as i e
-
I have a money field which is 10 in character The requirement is for example -365.67. should come out -0000036589 presently my result is 0000-36589 because I am using the following + convert(char(10), replicate('0',10-len(replace(convert(varchar,t.
-
A505-S6965 HD True Brite LED screen cracked
, what sattilite screens will interchange for used replacement? All A505?