Segment creation for outbound Idocs to non-SAP system

Hi,
I need to create a custom idoc for outbound interface to a non-SAP system. Here I need to create segments. So, should I create the fields in the segment with the attributes of fields in non-SAP system or fields attributes should be of SAP system.
For example:
There is a field invoice number which is of 10 Chars in SAP but in legacy it is divided into 2 fields: invoice prefix of 2 chars and invoice no. of 8 chars. Should my segment contain one invoice field of 10 chars or should it be two fields with 2 and 8 chars?
In general, always should the segment fields contain field attributes based on receiving system?
Thanks in advance.
Sriram.

Hi
Should my segment contain one invoice field of 10 chars or should it be two fields with 2 and 8 chars?
I think it shoild be better to have 2 fields, but probably the result will be the same if you send the idoc by a text file, because both informations should be contiguos, I mean if you have file with a record like this:
1234567890
This record can be obtained downloading a segment with 2 fields:
FIELD1 = '12'
FIELD2 = '34567890'.
or single field:
FIELD = '1234567890'.
So it'll be the same for tje target system
In general, always should the segment fields contain field attributes based on receiving system?
It depends on who has to convert the idoc to the right format for the target system
I mean you can create a "SAP" Idoc, so the receiving system will have to convert it to the right format
or
you can send the idoc in the right format, so the receiving system doesn't need to convert it
Max

Similar Messages

  • Receiving IDocs from non-SAP system ...

    Hello guys,
    I have problem with implementing IDoc-XI-IDoc scenario. The sender system is a subsystem (non-SAP system) sending IDocs but XI is not able to receive them. I thing the IDoc metadata can not be found.
    Logical system name of the sender is IF6020DEV. I registered the system in SLD. In Integration Directory I imported the Bussines System IF6020DEV to my scenario and I created communication channel of type Sender IDoc Adapter in it.
    In IDX2 I created new port called IF6020DEV and I copied needed metadata into the port. But it doesn't work. Probably I don't do it right because I'm beginner with SAP XI.
    Could you give me any advice how to configure XI for receiving IDocs from non-SAP system?
    Thank you in advance!
    Regards
    Zbynek

    Thank you very much. The issue described in refered discussion is almost same issue what I'm solving. Unfortunetally the described solution dosn't work for me.
    The sender system still returns following error. I know you probably won't understand it because you don't know the subsystem, but maybe you could get some idea what is wrong.
    05/29/09 16:09:19.482 idoup2 Logon...
    05/29/09 16:09:19.482 idoup2 RfcOpenEx (TRACE=1 CLIENT=110 USER=xxxxxx LANG=D LCHECK=1 GWHOST=xxxxxx GWSERV=3361 ASHOST=xxxxxxx SYSNR=61 PASSWD=<password>)
    05/29/09 16:09:19.529 idoup2 Logon RfcOpenEx result=1
    05/29/09 16:09:19.607 idoup2 Call to (IDOC_INBOUND_ASYNCHRONOUS) failed (3)
    05/29/09 16:09:19.607 idoup2 Handle=1
    05/29/09 16:09:19.607 idoup2 key............:
    05/29/09 16:09:19.607 idoup2 status.........:
    05/29/09 16:09:19.607 idoup2 message........:IDoc-Adapter Eingang: Der Absenderport ist initial
    05/29/09 16:09:19.607 idoup2 internal status:
    05/29/09 16:09:19.607 idoup2 idoc_upload failed with rc=(3), try(2)
    05/29/09 16:09:20.607 idoup2 key............:IDoc-Adapter Eingang: Der Absend
    05/29/09 16:09:20.607 idoup2 status.........:EXCEPTION SYSTEM_FAILURE RAISED
    05/29/09 16:09:20.607 idoup2 message........:IDoc-Adapter Eingang: Der Absenderport ist initial
    05/29/09 16:09:20.607 idoup2 internal status:
    05/29/09 16:09:20.607 idoup2 idoc_upload failed with rc=(18), try(1)
    05/29/09 16:09:21.607 idoup2 Logoff...

  • *IDOC INBOUND ( NON SAP system - SAP system )*

    I am transferring IDOC  INBOUND ( NON SAP system ->> SAP system ) by calling SAP standard funtc module IDOC_INBOUND_SINGLE using SAP JCo.
    In which I am passing all necessary information in Control Record regarding sender and receiver port/IDOC/segment etc.
    BUT help me to clarify my doubt that if i am calling a function and i am able to access SAP FM, then why i have to specify the SAP port/RFC connection at RECEIVER end in WE21.
    Whats the Significance if i am calling the FM from same SAP system and configuring the port explicitly in WE21.*
    If i don't Specify in we02 i am getting error as EDI : RECEIVER PORT in CONTROL RECORD is INVALID

    Dear Sree,
    For Basic understanding of IDOC read : saptechnical - Step-by Step ALE IDOC guide ( all necessary TCodes available here )
    Kindly let me know your data flow .
    In short :
    As per my scenario the data flow is from  non SAP to SAP  i,.e. Inbound processing.
    At my non SAP  i am calling SAP standard function IDOC_INBOUND_SINGLE using SAP Jco 2.1.
    You have to fill all Control Structure EDI_DC40 ( port etc. ) and Table parameter EDI_DD40 ( segment etc. )
    Read IDOC status and error in WE02.
    Goodluck.
    - Aakash

  • IDOCS: Inbound non-SAP system

    Hi
    The outbound idocs works fine. I want to create an inbound goods receipt/movement idoc.
    Should i rather write RFC to update the SAP system from a non-SAP system ?

    Hi,
    Your first query...
    Should i rather write RFC to update the SAP system from a non-SAP system ?
    Always prefer using idocs for posting before BAPI / RFC fucntion module.
    As you have mentioned outbound idocs are working fine..which means you are able to create idocs from non-sap system..right? If so you can use same idoc type for posting.
    Your second query's answer...
    Check out following code for calling BAPI_GOODSMVT_CREATE
    You need to code to call function module /BAPI in your posting program as follows..
    append the data into the corresponding internal tables and work-area, check for the IMPORT and TABLES parameter in the function module BAPI_GOODSMVT_CREATE.
    a.     GOODSMVT_HEADER-DOC_DATE = SYST-DATM
    b.     GOODSMVT_HEADER -PSTNG_DATE = RECEIPT_DATE (Input File)
    c.     GOODSMVT_HEADER - HEADER_TXT = BATCH ID (Input File)
    d.     GOODSMVT_HEADER - GR_GI_SLIP_NO = GOODS_INWARD_NO (Input File)
    e.     GOODSMVT_ITEM-MOVE_TYPE = Constant ‘101’
    f.     GOODSMVT_ITEM-PO_NUMBER = PURCHASE_ORDER_NO (Input File)
    g.     GOODSMVT_ITEM -PO_ITEM  = PURCHASE_ORDER_LINE_NO (Input File)
    h.     GOODSMVT_ITEM –PLANT = From Selection Screen (WERKS)
    i.     GOODSMVT_ITEM – STGE_LOC = From Selection Screen (LGORT)
    j.     GOODSMVT_ITEM -ENTRY_QNT = QUANTITY_RETURNED (Input File)
    k.     GOODSMVT_ITEM -NO_MORE_GR = COMPLETE_INDICATOR (Input File). Value ‘X’ if status = ‘X’ else space.
    6.     Call the function module BAPI_GOODSMVT_CREATE.
    7.     Use function module BAPI_TRANSACTION_COMMIT to do the commit work.
    append the data into the corresponding internal tables and work-area, check for the IMPORT and TABLES parameter in the function module BAPI_GOODSMVT_CREATE.
    a.     GOODSMVT_HEADER-DOC_DATE = SYST-DATM
    b.     GOODSMVT_HEADER -PSTNG_DATE = RECEIPT_DATE (Input File)
    c.     GOODSMVT_HEADER - HEADER_TXT = BATCH ID (Input File)
    d.     GOODSMVT_HEADER - GR_GI_SLIP_NO = GOODS_INWARD_NO (Input File)
    e.     GOODSMVT_ITEM-MOVE_TYPE = Constant ‘101’
    f.     GOODSMVT_ITEM-PO_NUMBER = PURCHASE_ORDER_NO (Input File)
    g.     GOODSMVT_ITEM -PO_ITEM  = PURCHASE_ORDER_LINE_NO (Input File)
    h.     GOODSMVT_ITEM –PLANT = From Selection Screen (WERKS)
    i.     GOODSMVT_ITEM – STGE_LOC = From Selection Screen (LGORT)
    j.     GOODSMVT_ITEM -ENTRY_QNT = QUANTITY_RETURNED (Input File)
    k.     GOODSMVT_ITEM -NO_MORE_GR = COMPLETE_INDICATOR (Input File). Value ‘X’ if status = ‘X’ else space.
    6.     Call the function module BAPI_GOODSMVT_CREATE.
    7.     Use function module BAPI_TRANSACTION_COMMIT to do the commit work.
    Hope this will help you.
    Cheers,
    Nilesh

  • Sending IDoc from Non-SAP system to XI

    Dear all,
       We have a non sap system which needs to send IDoc to XI, Please could you answer my following four questions
    1. What should be the values for the following fields in the IDoc control record
    e.g. RCVPRN = <logical system name of XI>
    SNDPOR
    SNDPRT
    SNDPRN
    RCVPRT
    RCVPOR
    2. How does XI decide which port(idx1) to be used when it receives an idoc
    3. The third party system is a non sap one, so it does not have a client no, so I would assume, I need to use another SAP system as a meta data provider, in that case, how would i tell XI to use that port when it receives IDocs from the non-SAP system ?
    4. In what step does XI use the logical system name of the Business system(in SLD)?
    Thanks in advance
    cheers
    danus
    Edited by: Chidambaram Danus on Jan 25, 2008 2:21 PM

    Hi
    there is bit wrong interpretation of the statement
    If the sender system is a non-SAP system, the sender service is identified from the logical system name of the sender port.
    If the sender system is nonSAP it indicates taht the data is coming to XI from non sap systems such as file, database, webservice etc. to XI and from XI it will pass to sap as IDOC inbound.
    For this you need to create the logical system in SAP (receiver) and pass on that value to IDOC header.
    You could maintain it in the Business service used for Sender system (nonSAP). here it will be available in the tabs ---> History.
    note : IDOC is the concept of data container in SAP, you will not be able to have the IDOCs in non sap systems...
    Thanks
    Swarup
    Edited by: Swarup Sawant on Jan 25, 2008 2:54 PM

  • Scenario for interface between a non sap system and a SAP erp

    Hello,
    I need some help in order to elaborate a interface between a SAP ERP and a non-sap system with the help of a XI system.
       -  At first regarding the interface from the non sap system and a SAP ERP :
           the non sap system sends a flat file to the XI system. The flat file contains a row with header data and rows with item data. We were thinking when the file arrives to the XI system, to save the data in a header database and in a items database in XI. is it possible ?
    And then to have like a job that reads the database and creates idoc and sends them to the SAP erp and updates the xi header and items database  with a flag that means that the records have been sent to the SAP erp.
       -   Regarding the interface SAP erp to non SAP system:
           the SAP erp sends idoc to XI. Then the idocs are transformed into flat file.
    Is this scenario possible ?
    Do we need any adaptator between the non sap system and the XI ?
    Thank you for your help
    Christophe

    Hi Bontron,
    Idoc doesnot support synchronous call. So you can use either proxy or function module and inturn call the idoc from them and send response back to xi. You need to have two scenarios for your design.
    Scenario1:   Source File (file adapter) -- xi -- Dump into database tables (Jdbc Adapter)
    Scenrio2:  Pickup form Database tables  (Jdbc Adapter) -- xi -- RFC Adapter  ---> This is synchronous call.
    Regarding the interface SAP erp to non SAP system
    You can send idoc to xi and from there use File adapter to send to the receiving system.
    These blogs may help you to some extent:
    /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30
    https://wiki.sdn.sap.com/wiki/display/XI/step%2bby%2bstep%2bRFC%2bto%2bJDBC%2bscenario   (your scenario will be opposite to this)
    Regards,
    ---Satish

  • Invoice posting for the PO from Non-SAP system

    Dear Friends,
    I have one requirement like from Non-SAP system PO details will be accessed from SAP and after certain calculations Invoice will be posted for the same PO back to SAP.
    Everything needs to be done in Non-SAP system by accessing SAP system.
    There are some BAPI which can be used for the purpose, but I am not able to get the correct BAPIs to get the PO details and Posting the Invoice for PO.
    Please anybody can help me out with the BAPI details.
    Thanks in Advance.

    Hi,
    Use following BAPIs
    BAPI_PO_GETDETAIL - To get Purchase Order details
    BAPI_INCOMINGINVOICE_CREATE - For Incoming Invoice
    Regards
    Vinod

  • Using BAPI for calling transaction from NON-SAP system

    hi all,
    im new to BAPI , i m working in producton firm we r short of license of SAP, we have given few authourisations to our venders and  we also have implemented HR portal and we r having shortage of license in that too. so my question is that can we use BAPI to reduce the use of SAP on vendors side and also for HR portal? like by using non-sap system on vendors side and for portal we can resolve the issue of licenses..???
    if yes then i want to do it that will be good for my carrer point of view. plzz help me out and give me the simple solution on it. we can not afford to buy the licenses bcoz of financial issues..
    thanxx....

    Hi Nilesh,
    Depending on the Scenario you need to decide what BAPI you will use. what solution are you excepting?
    Regards
    Shital

  • Is a third-party tool required for data extraction to non-SAP system?

    Hi,
    I want to extract data to non-SAP systems with the open hub service.
    If I choose Database tables as open hub destinations, I would like to know if a third-party tool is mandatory and if it's possible to send data directly from database tables in BW to non-SAP systems.
    Many thanks
    Ella

    you can choose a flat file on the application server and then transffer the file from the application server to other server where you want to use.
    in case you want to use the table in the open hub service. any other software that can connect to oracle db / the databasee you have and can access the data from the table.
    Regards,
    Bwer
    Assign points if helpful.

  • FM to recive the Idocs from Non-SAP system.

    Hi Gurus,,,,
    Is there any FM to recive the IDocs from the outside(Non-SAP) into SAP system.
    Thanks In Advance.
    Abhi....

    hi digvijay
    You could refer to this link which has method to convert  xml to Idoc:
    http://www.wmusers.com/forum/showthread.php?t=9059
    Best Regards
    Manthan.

  • Sending IDoc to Non-SAP system

    Hi Folks,
        I have to send an IDoc to the external system. Kindly let me know the steps to be performed for it.
    Reagrds,
      santosh

    Just to be a little more clear. The step 8 in the previous link.
    8. Checking the Partner Profiles.
    o       Go to T. Code WE20
    o       Expand Partner Type 'Vendor'
    o       Select the Partner profile __
    o       Double click on Message Type ZCATSTIME in Outbound parmtrs.
    o       Check Receiver Port is assigned correctlyo     
    Check the Basic type as your Basic IDOC object.
    Disha.

  • EDI Sales order creation in CRM through inbound IDocs from non SAP system

    Hi Friends,
    We are having a scenario where we need to create a Sales Order in CRM for a B2B EDI transmission through IDoc. Customer is sending the EDI Transmission of his Sales order , which is passing through PI and then reaching to CRM to create a Sales order.This is the design we need to follow to make it happen,we are initially trying to create an order using WE19 for testing and the details are:
    Basic Type - CRMXIF_ORDER_SAVE_M01
    Message Type - CRMXIF_ORDER_SAVE_M
    Functional Module - APPL_IDOC_INPUTI which is automatically giving a status text as " Function module CRMXIF_ORDER_SAVE has been called successfully", but no sales order is saved in CRM.
    We are getting idocs posted successfully with status 53 with the statuses sequence 74, 50 ,64, 62 and 53.Our issue is inspire of the Idoc having status 53 and the FM called successfully we are not seeing the sales order created in CRM.
    We are stuck here no sales order is created in CRM.
    Are we missing any config. - set up  - Prerequisit  -  Any OSS note need to be applied  --  ANy middle ware setting ?
    Any help will be greatly appreciated.
    Thanks
    Vijay

    Hi Christophe,
    Awesome!!!!!! it worked, You are the best.
    I could able to create a sales order in CRM,but below are the valid data I passed in the respective segment fields.Except for first 3 values rest all did not get reflected in teh Sales order.I feel i am missing some qualifiers.
    Can you kindly share the  IDoc data to be passed in...along with respective segments and fields:
    Segment                                                 Field
    E101CRMXIF_BUSTRANS     OBJECT_TASK         
    E101CRMXIF_BUSTRANS     PROCESS_TYPE
    E101CRMXIF_BUSTRANS     POSTING_DATE
    E101CRMXIF_PARTNER                          PARTNER_NO
    E101CRMXIF_PARTNER                RELATION_PARTNER_NO
    E101CRMXIF_ORGMAN         SALES_ORG
    E101CRMXIF_ORGMAN          DIS_CHANNEL
    E101CRMXIF_ORGMAN         DIVISION
    E101CRMXIF_SALES             PO_NUMBER_SOLD
    E101CRMXIF_SALES            YOUR_REF_SOLD
    E101CRMXIF_SALES            PO_NUMBER_SHIP
    E101CRMXIF_BUSTRANS_ITEM     ITEM_NUMBER
    E101CRMXIF_BUSTRANS_ITEM     ITEM_TYPE
    E101CRMXIF_BUSTRANS_ITEM     ORDERED_PRODUCT
    E101CRMXIF_PRODUCT_I     PROCESS_QTY_UNIT
    E101CRMXIF_PRODUCT_I     PROCESS_QTY_UNIT_ISO
    E101CRMXIF_PRODUCT_I     BASE_QTY_UNIT
    E101CRMXIF_PRODUCT_I     BASE_QTY_UNIT_ISO
    E101CRMXIF_SCHEDLIN_I     ORDER_QTY
    Thanks a ton in advance .
    Vijay

  • Steps of EDI is used to transfer IDOC from R3 system to non sap system

    Hi Experts,
    Can you provide me Steps to configure EDI is used to transfer IDOC from R3 system to non sap system?
    Full points will be assigned.
    Thanks in advance!
    Sapna

    Hello,
             The EDI Configuration required to be done for Transfering IDoc to non SAP System is.
    1. First of all, we need to identify the Transaction Data which is required to be Transfered to external System.(Ex: Sales Order Data or Shipment Data or Delivery Related Data).
    2. Secondly, Identify the IDoc Type & Message Type. IDoc Type can be found in Transaction WE30 & Message Type Can be explored in Transaction WE81.
    3. After that, assign the IDoc Type to Message Type in WE82.
    4. Identify the Selection Program (Outbound) which is generally a Function Module in the Form of IDOC_OUTPUT_<Message Type>. Example, if the Message Type is ORDERS, the FM will be IDOC_OUTPUT_ORDERS.
    5. Assign the Function Module to a Process Code in WE41 (Process Code for Outbound).
    6. Configure Port Definitions in WE21 for which the RFC destinations are to be maintained in Transaction SM59.
    7. Maintain Partner Profiles for the Outbound Message Processing in WE20.
    8. Last, but not the Least, we need to Focus Mainly on Message Control Configuration which is nothing but maintaining the Output Type for the Outbound IDoc to be Triggered for the Sales Order Application or Delivery Application.
       i. In Message Control Configuration, we'll maintain
          a. Condition Tables
          b. Access Sequences
          c. Output Types
       ii. To Create the above elements, we can go to SPRO Transaction and do the same depending on the Application Area such as Sales / Shipping / Logistics Execution etc.
       iii. For Output Types & Access Sequences, we can go to the Transaction NACE or VK01 in which we'll maintain the Output Types / Access Sequences & Condition Records.
       Please note that all the above steps may not be needed if we are using some of the Standard Elements provided by SAP such as Message Type, Process Code, IDoc Type & Selection Program as many of the Standard SAP Applications have their own Elements for different Application Areas.
       For example, if you want to send an Order Confirmation IDoc when the Sales Order is saved, you can use the Message Type ORDRSP, IDoc Type ORDERS05 & Selection Program as IDOC_OUTPUT_ORDRSP.
       However, Message Control Configuration is the Key Factor and is required for all the Applications as per the Customer's / Client's Requirements.
    Hope the above procedure was clear.
    Thanks and Regards,
    Venkat Phani Prasad Konduri

  • Data elements for IDoc Segments to non-SAP system

    Hi,
    I need to create IDocs for transferring data to non-SAP system. When I create segmet fields should I create new data elements for all the fields with attributes specific to receiving system? Because there are many fields where the field attributes of SAP system do not match the corresponding fields of receiving non-SAP system.
    Thanks in advance!!
    Regards,
    Sriram

    Hi Sriram,
    When I create segmet fields should I create new data elements for all the fields with attributes specific to receiving system
    Is it custom  segments .
    Regards,
    Madhu.

  • HOWTO: Process IDocs To non-SAP receiver

    Hi Experts!
    Today our SAP R/3 sent the IDoc LOIPRO to non-SAP external system, called O2P.
    Now, we would like to send this IDoc (LOIPRO) to XI, and the XI sends the IDoc to the non-SAP external system.
    Then, our scenario will be:
    Step 1. The IDoc LOIPRO is sent from SAP R/3 to XI
    Step 2. Inside the XI, this message is routing and mapping to the
    IDoc LOIPRO too.
    Step 3. The XI sends the IDoc LOIPRO to the O2P (non-SAP external system).
    Well, until Step 2, everything is OK.
    But, we are having troubles to create an IDoc Adapter receiver to O2P (external system), because the O2P is a non-SAP system.
    So, how can we create the communication channel IDoc Adapter, if the receiver isn't a R/3 system ?
    All information will be welcome.
    Thanks a lot,
    Honorato

    HI,
    You can achieve this by dealing with the Native IDOC structure via Integration server for Non-sap systems.
    In this case you can use the IDOC adapter to receive the IDOCs to Non-SAP system. Its like treating the receiver Non-SAP system as an SAP system only. For this Non-SAP system should be compatible enough and SAP certified to accept the IDOC structures..
    Refer similar kind of discussions and reference docs.
    Sending and Receiving IDOC from SAP to Non SAP system
    http://help.sap.com/saphelp_nw04/helpdata/en/52/16abc2543311d1891c0000e8322f96/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/0b/2a6524507d11d18ee90000e8366fc2/frameset.htm
    Thanks
    swarup

Maybe you are looking for