Idoc file to R/3 interface

Hi All,
I have a scenario to send EDI flat file to R/3. I need to write an interface program to read the file and map it to idoc and post it in the backend FI system
Any sample program code or process would be helpful and appreciated. The reqmt is so urgent
Thanks
Ricky

Read the Idoc file using standard upload methodes OPEN DATASET, TRANSFER or GUI_UPLOAD.
Once the file is got into the program use IDOC_INBOUND_SYNCHRONOUS to create Idoc from the file data. Its interface is fairly simple, it just has an internal table which  takes the file and creates idoc, if the file data forms syntactically correct idoc.
You can also use EDI_DATA_INCOMING function which can directly read the file from file port and create idoc.

Similar Messages

  • HR-PDC interface: Problems in the file name of the downloaded idoc file

    I'm currently busy with the HR-PDC interface to EBI-time recording system. The RFC destination to EBI's quality system is working fine but we are experiencing differences in the idoc file name that we are creating in the EBI path. When we send a request to EBI to upload clocks, an idoc (Message Type: HRCC1REQUPTEVEN and IDOC type: HRCC1REQUPTEVEN01 ) is sent to EBI The file name is HRCC1REQUPTEVEN whereas in a previous implementation file name is HRCC1REQUPTEVEN01. The control record information on the outbound idoc are the similiar in terms message types and idoc types sent through to EBI. Have you ever come across this issue in your previous experiences with SASOL's HR-PDC interface. SAP has not changed the IDOC type HRCC1REQUPTEVEN01 since 1998.

    can you please also contact IDM support about it?
    * http://www.internetdownloadmanager.com/register/new_faq/main.cgi

  • Issue in IDOC-File Scenario

    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,
    Younus

    Hi
    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

  • Problem adapter idoc - file ATTRIBUTE_INV_SND_SERV

    Hello All,
    please help me for my problem on adapter in my system XI for a scenario idoc -> file an I have an message error.
    <b>xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_INV_SND_SERV</SAP:Code>
      <SAP:P1>BS_ADONIX</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Unable to convert the sender service BS_ADONIX to an ALE logical system</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error></b>
    Please help if you have some idea BS_ADONIx is a business service.
    Thanks for your reply

    Steps IDOC to File.
    IN IR
    1. Import the IDOC in XI (input).
    2. Create a Data type of (output) i.e. file.
    3. Create a Message type of (output) i.e. file used the above data type.i.e.Step 2
    4. Create a Message interface of(output) .i.e file used the above messagetype. i.e.Step3.
    5. create Mappping select source as IDOC and target as Message type you created.
    6, In Interface mapping select source as IDOC and Target Interface Message Interface of file i.e.Step 4.
    In ID.
    Select the recevier determination of .
    1.select sender system as R/3 system recivr as File Bunisees system
    2. create interface determination select sender system as R/3 Sender interface as IDOC . in interface determination select inbound message whihc createdin step 4
    and message interface we created in step 5.
    3. create recevier determination sender r/3 interface IDOC and reciver File business system . so create reciver file adapter and assign to file business system
    Please reward points
    Thanks
    Sreeram.G.Reddy

  • Acknowledgement - IDoc-File & File-IDoc scenario

    Hi All,
       Acknowledgement is possible in case of asynchronous IDoc-XI-File scenario? If yes, how to setup?
       Same as above question for File-XI-IDoc scenario.
       In case of synchronous scenario, how to setup email with acknowledgement?
    Thanks a lot in advance.
    Sree

    Hi Rama,
    While doing an IDOC -> XI -> File scenario, The Points to noted are:
    1. You don’t need a DT, MT or a message interface for the IDOC as it itself acts as the Message Interface.
    2. You import the IDOC and use the same in your mapping.
    3. In this configuration note that you don’t have a sender agreement as you don’t have a sender IDOC adapter.
    If it is that you wanted to send an IDOC from XI (File to IDOC) , then in this case:
    points 1 and 2 will remain, but the 3 will not. You will need a sender agreement for the file and a receiver agreement for the IDOC.
    IDOC -> File scenario ref:
    /people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters
    File -> IDOC ->
    /people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping
    (It concentrates on XSLT mapping but also gives an idea about the configuration part. Do go thru that, it might help you.)
    I hope I have answered your query.
    Regards,
    Abhy
    PS: AWARD POINTS FOR HELPFUL ANSWERS.

  • 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
    Suman

    Hi 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

  • IDOC - FILE Issue

    SCENARIO: IDOC-FILE
    IDOC: COND_A04
    DESIGN: Two namespaces with DT,MT,MI,MM,IM for sales condition and purchase condition.
    Here based on the condition(LIFNR) i have to schedule the message to either salesconditon CC or purchasecondition CC.
    REQUIREMENT: If LIFNR has value in IDOC it should go to SALESCONDITION receiver CC, else PURCHASECONDITION.
    I need the condition to be given in receiver determination.
    note: we are using different structures for salescondition and purchase condition even the idoc is same.
    thanks in advance

    Hi,
    First check some links on xpath and then put the condition in receiver determination
    XPath to show the path (Multiple Receivers)
    http://help.sap.com/saphelp_nw04/helpdata/en/43/a5f2066340332de10000000a11466f/content.htm
    http://www.w3schools.com/xpath/default.asp
    http://www.w3schools.com/xpath/xpath_operators.asp
    Customise your 'XPATH' Expressions in Receiver Determination
    Multiple Inbound Interfaces within a Service
    Have a look into this link for complete understanding about XPATH Predicates.
    http://www.tizag.com/xmlTutorial/xpathpredicate.php
    Customise your 'XPATH' Expressions in Receiver Determination
    Multiple Inbound Interfaces within a Service
    XPath to show the path (Multiple Receivers)
    http://help.sap.com/saphelp_nw04/helpdata/en/59/e1283f2bbad036e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/ab/13bf7191e73a4fb3560e767a2525fd/content.htm
    https://forums.sdn.sap.com/click.jspa?searchID=12418562&messageID=5232329
    http://www.tizag.com/xmlTutorial/xpathpredicate.php
    XPath to show the path (Multiple Receivers)
    http://help.sap.com/saphelp_nw04/helpdata/en/43/a5f2066340332de10000000a11466f/content.htm
    http://www.w3schools.com/xpath/default.asp
    http://www.w3schools.com/xpath/xpath_operators.asp
    Customise your 'XPATH' Expressions in Receiver Determination
    Multiple Inbound Interfaces within a Service
    http://help.sap.com/saphelp_nw04/helpdata/en/59/e1283f2bbad036e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/ab/13bf7191e73a4fb3560e767a2525fd/content.htm
    Regards,
    Phani

  • Routing based on header record RECPOR in IDOC File

    I am working a flat file (actually, its an IDOC file) that will enter the configuration scenario through a Seebruger SFTP adatper.  Since this is a flat file, and not XML, I need to convert this to XML prior to doing content based routing in the receiver/interface determination.
    I am most concerned with the RECPOR field.
    RCVPOR : Receiver port
    internal data type : CHAR
    Internal length : 000010 characters
    Position in segment : 024, Offset : 0263. external length : 000010
    The scneario is a simple passthrough.  What I envision doing is converting the IDOC Flat file to an XML structure, then doing content based routing on the one field I am interested in, as mentioned above.
    Is there a way to do this without modifying the payload in teh sender/receiver channels, or am I going to be forced to doing content conversion with MessageTransformationBean?
    Since all of my routing will be done on 10 characters, I see breaking the file up into 3 fields...characters 1-263, 263-273, 273-EOF does some one have a sample of how to separate this, and how to recombine the values in the receiver?

    If I wanted to break the file up into 3 elements in a simple XML strcuture....
    I know its possible to do this using fixed field lengths...is there a method to break that file up int a simple xml structure with, lets say, 3 elements....
    Where field 1 contains from the start of the file (1) thorugh say character 31.  Filed 2 contains 31-41 then the third field to contain the rest of the file?  These 'flat files' could be any one of a dozen or so IDOC files that are being sent to me from an external EDI Translator.

  • Configuring a multiple IDOC-File using BPM

    HI,
    My scenario involves 2different idocs which are to be mapped to a file structure,the steps that i have followed in IR is ,
    1.Create target MesageType
    message Interfaces.
    2.Create 2 Abs interfaces based on IDOC
    3.Create 1 Abs for o/p of BPM.
    4.Create 1 Inb for target.
    Message mapping.
    5.Two dummy mappings for outbound idocs to abstract idocs.
    6.One multimapping(two idocs-->File)
    7.One Dummy mapping for Abstract Intf(output of BPM) to target Filestructure(inbound).
    Interface Mapping.
    8.Two Mesage intf for changing Outbound idocs to Abstract using the dummy mapping programs)
    9.One Message Intf using 2 abs Idocs to One Abs File(using the multimapping pgm)
    10.one msg Intf for BPM Out --> Inb File (using the dummy mapping pgm)
    Integration Process.
    I have used a fork step under which there are 2 recieve steps to recieve the IDOCS and then a Transformation step that would multi-map the idocs to the file,then a send step.
    Please let me know if the approach is right.
    Also Could anybody please let me know what steps do i need to take in the Configuration part and should i use the wizard or should i do it manually.
    the problem using the wizard is it doesnt let me choose 2 Message interfaces for the sender ie; IDOCS,
    Please help me on this.Thank you waiting for a reply....)

    John,
    <i>5.Two dummy mappings for outbound idocs to abstract idocs.
    7.One Dummy mapping for Abstract Intf(output of BPM) to target Filestructure(inbound).</i>
    These dummy mappings are needed. As both the Abstract Message Interfaces and the Idoc / Inbound interface will use the same message type, no dummy mapping needed. In the interface determination for these, no interface mapping needs to be mnetioned.
    ID.
    Receiver Determaintions
    1. Sender Service -- IDOC1  and Reciver Service is -- BPM. Sender Interface will be IDOC1 and Receiver Interafce will be The IDOC abs interface . No Interface mapping.
    2. Sender Service --- IDOC2 and Receiver Service is -- BPM. Sender Interface will be IDOC2 and Receiver Interafce will be The IDOC abs interface . No Interface mapping.
    3. Sender Service is BPM , and receiver servcice is File. Sender Interface is File Abs interface and reciver interface is the Inbound File interface.
    1 Reciver Agreement for the File adapter.
    Regards,
    Bhavesh

  • Can you plz tell m how to write Design Strategy in the scenario IDoc-- File

    Hi,
    can any body plz tell me how to write Design strategy, Preprocessing logic and post processing logic in the scenario IDoc-->File.
        My idoc is:
                Message Type: ZMMIPORDCHG
                Basic Type  : ORDERS05.
    lookup's are available.

    Hi,
    take a look at this document for an IDOC to IDOC Scenario,
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/cdded790-0201-0010-6db8-beb9bb2b2660
    Use it as a template to design one side of the Interface and also take a look at this blog,
    /people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters
    Regards,
    Bhavesh

  • IDOC -FILE ERROR

    HI experts,
    My scenario is sending IDOC(DEBMAS06) to FILE.
    I have configured all the requirements BD54,SM59,WE21,WE20 IN R/3 and SM59,IDX1,IDX2.
    WHEN I AM SENDING AN IDOC USING TrCode:BD12, I AM GETTING AN ERROR IN WE02 THAT "EDI: Partner profile inbound not available".
    AND IN IDX5 I AM GETTING AN ERROR "No receiver could be determined"
    NOTE: IT IS IDOC - FILE SCENARIO
    THANKS IN ADVANCE

    HI SWARUP,
    AFTER DOING ALL THE STEPS U GUIDED, THE RESULT IS AS FOLLOWS IN ID,
    Interface Mapping
    <Not found>
    Runtime error
    java.lang.NullPointerException thrown during application mapping com/sap/xi/tf/_CUSTOMER_MM_:
    <Trace level="1" type="B">CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV</Trace>... (109 lines)
    THANKS IN ADVANCE

  • How does XI pick up idoc-file sitting in SAP?

    Hi All,
    Our scenario is SAP (Idoc) --> XI --> Bank(FTPS). We are creating idoc-file in SAP system and want transfer this file using XI to bank FTP server.
    This what we done in SAP system:
    1) Created FILE port pointing to physical directory in SAP system
    2) Created Partnet Type B (bank) partner profile
    Created i/b and o/d interface in XI refering Idoc. Now configuring sender file adapter....Can I pick up file in SAP system using NFS?? How does it work?
    What is the best way to do this scenario by using XI?
    Thx
    Navin

    Navin,
    Create a File port in WE21. Also give the directory and file name in the physical directory. When ever you have created the partner profile you have to give the Recevier Port. Give this as your File port which is created above.
    Then in the corresponding directory you will have a Flat Idoc. Then pick this file with XI and send to the Bank as FTP. You dont need anything in IR. Only you need is ID. Check this for some help on how to use XI for FTP purpose:
    /people/shabarish.vijayakumar/blog/2006/04/03/xi-in-the-role-of-a-ftp
    ---Satish

  • How to convert Idoc file to EDI format?

    Dear Expert,
       I've config outbound process of purchase order and send idoc out put to idoc file(XML) after that I would like to convert IDoc file to EDI format. How to conver IDoc file to EDI format?
    Please suggest me.
    Big thanks,
    Sak

    Consult Abaper..
    Interface is going to do this activity

  • Communication with the  Idoc file with is server through FTP (TCP/IP)

    Hi All,
    My file which is stored in the directory of the SAP server.
    In this file Sales order data is stored in the IDOC format.
    I have to devlelop a interface which which communicate with Server (where IDOC file is stored) with FTP using TCP/IP.
    Is there any sample code is there.
    Thanks in advance .
    Point guranted .

    Hi,
    Check this links out
    Using of FTP_CONNECT
    FTP_CONNECT
    FTP_CONNECT
    Regards,
    Samson Rodrigues.

  • Fetching Idoc file from server through FTP using TCP/Ip protocol

    Hi All,
    My file which is stored in the directory of the SAP server.
    In this file Sales order data is stored in the IDOC format.
    I have to develop a interface which which communicate with Server (where IDOC file is stored) with FTP using TCP/IP.
    Is there any sample code is there.
    Thanks in advance .
    Point guranted .

    Hi,
    Check this links out
    Using of FTP_CONNECT
    FTP_CONNECT
    FTP_CONNECT
    Regards,
    Samson Rodrigues.

Maybe you are looking for

  • Pdf color looks different in preview and acrobat?

    I notice that the colors in various PDF files I have look different in Preview and in Acrobat. Is there some weird color profile issue? To be specific, I can create a PDF file in various ways, of a slide deck I originally created using Keynote. It ha

  • ITunes showing updates available for the account of a visitor

    All my apps are up to date. Some time ago a visitor signed into iTunes on my iMac, bought some tracks and apps etc, then signed out. iTunes keeps showing the updates for those apps even though the visitor is long gone. How do I erase the update notif

  • REST Web Service References: Can't run Google APIS

    Hello Everyone! I am learning on how to integrate REST web service reference in APEX application. I found a tutorial video at YouTube on 'Creating and Using a RESTful Web Service in Application Express 4.2', which found to be very helpful and easy to

  • Finding sum inside Loop

    Hi Experts, here i am printing report output. in my internal tab there are 10 fields, inthat last field is CURRENCY (amt). now i want to sum that field at end of first field. my pease of code is below: LOOP AT it_display INTO wa_display.     IF wa_di

  • Destructive audio edit in LPX

    How in LPX you can process individual audio region in any plug-in destructive form. Is there such a possibility? Here is a audio editor, but he is weak to process the files. Don't understand why there are no elementary functions such as file processi