Flat File to IDOC Scenario

I am working on the following scenario:
Flat CSV orders file to a Orders IDOC.
The input file has data like
a,b,c,d,e,f,g,h...
a,b,c,d,e,f,g,h...
We need to generate ONE IDOC per file. The complexity lies in the mapping.
The segments generated in the IDOC and the number of times they are generated all depends on the values of a,b and c and the segment fields are mapped to values either from the file or mapped to some constants or are figured out based on some logic depending upon what value a,b or c has and what range of values c has.
Overall, quite a complex mapping.
The way I am trying to work is:
1. Create Outbound MI ABC based on the File Structure:
<Record> 0 to unbounded
<a></a> 1..1
<b></b> 1..1
<c></c> 1..1
2. Do file content conversion in Sender File adapter.
3. Import the Orders02 idoc in the IR.
4.Create a message mapping with ABC as source and Orcers02 IDOC as target.
5. Now with mapping, I am trying to use createif for every IDOC segment node. The logic is to create this node if the condition is true ( i.e a=somevalue else do not create).I am definig UDF for evaluating these conditions.
6. Then I map the fields of the generated segment node to either the values from the source or some values generated by UDFs based on some criteria.
I am still in the mapping phase and I just wanted to know if this was a correct approach to acheive this. So far, I am mapping one node and when I check in the output it works okay.
My question is :
1. I would end up using lots of UDFs for every input record and for every record of input, each UDF will be called again and again.
2. Does anyone know of any better approach to achieve this?
3. If a segment appears more than one time, let us say generate segment E1TDK01 if a=1, and a could be 1 in multiple records that means generating multiple E1TDK01 segments, is there anything that needs to be taken care of? I see in the target structure that this segment can occur 0 to 99 times, so will this segment be generated 5 times if my file had a=1 in 5 records?
Please help me understand this and any pointers to existing weblogs will also be appreciated.

Hi,
Try this and this should resolve your issue:
1. Import IDOC into repository
2. After import, download the wsdl of the imported IDOc into your file system
3. Open the wsdl and insert code at the IDOC tag ===> minOccurs=0, maxOccurs=unbounded (Pl follow correct syntax, I may not be right on syntax)
4. save the file
5. imported the modified wsdl  into repository and use this one in the message mapping
6. In message mapping, messages tab change the occurances to 0 to Unbounded for the modified wsdl IDOC
7. Do the same thing in interface mapping
Hope this helps.
TNV

Similar Messages

  • How to skip a record in flat file to idoc scenario?

    Hi,
    Anybody have good suggestions on how to skip a record(xi not process the record) based on certain conditions?  I don't want to use bpm, anybody has experience with file to idoc can advise how to deal with this situation?
    Thanks,
    Meg

    Meg,
    Its very clear. It can be easily done. I hope u might be knowing about Michal's changing the IDOC occurence blog. Based on that blog change the IDOC occurence to 0...Unbounded.
    Now map all the necessary fields to the target IDOC. On the IDOC root node set condition from source if the source field is not Delete then create IDOC else don't create.
    Source --- If without else[Check condition if  the source is delete] -
    IDOC(root node).
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Hope its clear, if not kindly revert back.
    Best regards,
    raj.

  • Getting Problem in Flat File to IDoc Scenario.

    Hi,
    I am facing problem which is as follows.
    Test Flat File Contain Data As Follow
    Field1,Field2,Field3
    Field4,Field5,Field6
    Field1,Field2,Field3
    Field4,Field5,Field6
    Field1,Field2,Field3
    Field4,Field5,Field6
    Source structure has only one segment with all six fields and is repeating.
    What will be the file content conversion parameters so that it will pick first 2 lines and convert it into segment in this away.(I cant create two segments)
    Thanks in advance.

    Hi,
    I agree with Vijay.. so try to create the Data type like this..
    Recoredset 0...1
    -----Line1 0.... unbound
    --------Field1 0...1
    --------Field2 0...1
    --------Field3 0...1
    -----Line2 0.... unbound
    --------Field4 0...1
    --------Field5 0...1
    --------Field6 0...1
    Now do your FCC
    Recordset Structure ---- Line1,*,Line2,*
    Recordset per Message ---- 1
    Line1.fieldNames ----- Field1,Field2,Field3
    Line1.fieldSeparator ---- ,
    Line1.endSeparator ----- 'nl'
    Line2.fieldNames ----- Field4,Field5,Field6
    Line2.fieldSeparator ---- ,
    Line2.endSeparator ----- 'nl'
    now map the fields as per your requirement.
    Regards,
    Sarvesh

  • Error in File to IDOC Scenario

    Hi,
    I have File to IDOC scenario.
    I am getting error in sender file channel.
    "Conversion initialization failed: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Mandatory parameter 'xml.keyfieldName': no value found "
    Although I have used this parameter in content conversion 'xml.keyfieldName' (for each sub structure and defined a key field).
    Despite of this error in sender channel I am receiving the message in XI.
    But in XI also it throws error :
    "Unable to convert the sender service PG_TOM_CEEMEA_RU_SFA to an ALE logical system"
    Any help on this ?
    Thanks,
    Vikas

    Hello Vikas,
    I am getting error in sender file channel.
    "Conversion initialization failed: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Mandatory parameter 'xml.keyfieldName': no value found "
    Although I have used this parameter in content conversion 'xml.keyfieldName' (for each sub structure and defined a key field).
    Check your flat file structure whether the key field you have chosen is appropriate and also recheck the FCC details whether you have assigned the value for the key field i.e.  keyFieldValue.
    "Unable to convert the sender service PG_TOM_CEEMEA_RU_SFA to an ALE logical system"
    regarding the above error refer this
    https://wiki.sdn.sap.com/wiki/display/XI/Unable%20to%20convert%20Sender%20system%20to%20ALE%20logical%20system
    Regards,
    Prasanna

  • Problem in executing File to IDoc Scenario in XI

    Hello,
    I am Working in HR Payroll module and new to XI.We are implementing File to IDoc Scenario in XI.When I place the flat file in the application server the file is read but the contents of the flat file is not getting posted to the IDoc.The constant values defined for IDoc in Mapping program is getting posted .I am not able to trace the error.
    kindly help me out in resolving this problem.IF there is any way of debugging the entire process please let me know.
    Thanks & Regards,
    Malathi V.

    hi,
    check this blog to test your mapping,
    /people/michal.krawczyk2/blog/2005/09/16/xi-how-to-test-your-mapping-in-real-life-scenarios
    Next, check your INBOUND MESSAGE in SXMB_MONI and check if the content conversion has been perfromed as expected.
    these steps will help you reason out the cause of your problem.
    Regards,
    Bhavesh

  • Converting a flat file to IDOC

    Greetings to All,
    I have a requirement where i need to convert an IDOC (flat) file to IDOC.
    the idoc is SHPMNT04.Presently i am trying to implement it using FCC at the sender side as the flat file is fixed length type.
    Can any one suggest me a better method like using XSLT or Java mapping which could make my work smarter as i am Finding it very difficult to count and write the FCC for the IDOC which is have more than 60 segments.
    Any help will be greatly admired.
    Thnaks,
    Anika.

    Hi
    I am still having a doubt if this method will work on real time scenario.I mean i have to pick files
    from an 3rd party FTP location (polling and picking as and when i get a file starting with say
    ABC*.txt).Added to this there will be issue related to the volume of file(1000 per day),will that create
    any performance issues.
    It is now that you are sharing the complete scenario/ problem , just have a glance from your first post at the top & the replies, because its the problem statement that steers the discussion.
    Making the files available for the Report is a seperate task. You have to develop FTP-to-File XI scenario (or regular ftp process to send files across, which normally will not be allowed in XI server), I dont see any other way, if any, I 'assume' that it might complicate the situation.
    Performance - it is not something to do with your scenario alone, but the overall system load, configuration etc. (b.t.w 1000 is normal)
    Can we schedule a job for running the report periodically?
    Yes, scehdule a batch job calling this Report (with necessary variants) with required frequency or exact time (if there is any agreement with sender)
    I have started a POC
    I appreciate that, best way at this moment. you can reverse engineer from the errors to configure your scenario. for any reason,if you think it does not work, you can always stop and/or look for different solution.
    need your help
    - Definitely I will share my thoughts, if time permits
    how will i get the flat file xml(IDOC) in the source side
    do you mean the source structure, you can use the same structure as your target.
    once you are convinced with your solution approach, then it is better to close this thread & start a new one with new issues, for more views & suggestions and better readability.
    @Rajesh - I appreciate your efforts to solve the issue , but the below is not correct & possible, w.r.t this issue
    Here what you need is to do configure File Sender CC with NFS protocol.
    Regards
    Vishnu

  • IDOC to Flat file and Flat file to IDOC

    Hello Experts,
      I have the following requirement in my current project:
    Third Party Sender sends the data in the in the below XML format via HTTP:
    <?xml version="1.0"?>
    <fxEnvelope>
      <header>
        <message>
          <exchangeID></exchangeID>
          <messageID></messageID>
          <subject></subject>
          <payloadType>IDOC</payloadType>
        </message>
        <from>
          <orgID></orgID>
          <locationID></locationID>
          <messageID></messageID>
        </from>
        <to>
          <orgID></orgID>
          <locationID></locationID>
        </to>
      </header>
      <body>
        <Opaque>
          <DataType></DataType>
          <DataStream></DataStream>
        </Opaque>
      </body>
    </fxEnvelope>
    In the above XML, the Tag <DataStream> is a string which contains the IDOC flat file.
    Now, the scenario is HTTP to IDOC, where the sender sends the above XML payload and PI needs to convert <DataStream> to IDOC XML and pass it on to the receiver R/3.
    But the challange i am facing is converting this <DataStream> tag which contains the IDOC flat file to IDOC XML using a Mapping program.Since both adapters are running on ABAP stack i can not go for Adapter Modules available(We are using PI 7.10).
    Looking for some guidance on the same.
    Thanks in advance.
    Cheers,
    Manasa.

    There are 2 options for you
    In either case, you might need a java mapping to convert the DataStream into String. Use a file adpater to write this string to IDOC-File.
    1) Option1: Write the content of DataStream into IDOC-Flatfile.(java mapping) Pick it from PI to convert IDOC-flat file inot IDOC-XML (using std features of PI) & send it to ECC.
    2) Option2: Write the Content of DataStream to IDOC-Flatfile (accessible to ECC system). Configure WE21 to pick the file from a file port.
    If the datastream was IDOC-XML, then it would have been simpler, it will be a direct communcation from PI to ECC (using java mapping & IDOC adapter).
    Regards,
    Siva Maranani

  • Flat File to IDOC- didn't get data into IDOC

    Hi All,
    Our scenario is Flat File to IDOC....
    working fine... didn't get any errors... IDOC also generated but didn't get any data in that IDOC....
    for details see the attachment...
    Thanks In Advance,
    vishnu.........

    Hi Rajesh,
    I am getting payload in RWB from sender Cc like below:
    <?xml version="1.0" encoding="utf-8" ?>
    - <ns:MT_File xmlns:ns="http://mouritech.com/file2idocsender"> 
    - <MT_File> 
    <Value>1</Value>  
    <Reason>test</Reason>  
    </MT_File>
    </ns:MT_File>
    If i test with this payload in mapping i am getting a pop up with this message and mapping not completed ...
    Could you please let me know what i have to do now?
    Pop Up: 
            The processing instruction target matching "[xX][mM][lL]" is not allowed.
    See error logs for details    

  • File to idoc scenario with controls

    I am working on file to idic scenario.
    file has four types of lines :
    Begin of file.
    header.
    items.
    end of file.
    each line has a element Record type and some other elements.for header record type is A , for item its B , for Begin of file its C and for end of file its D.
    we have to check for every line that it should have record type as one of these four and if not so we have to send a mail through alert functionality.we have to send a mail which has all errors by checking the whole file for record types.we have to ignore these lines in the file and proceed with the rest.
    how can we implement this?
    regards,
    rohit

    Hi,
    Please go through these links
    /people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters
    /people/venugopalarao.immadisetty/blog/2007/01/24/troubleshooting-file-to-idoc-scenario-in-xi
    /people/ravikumar.allampallam/blog/2005/06/24/convert-any-flat-file-to-any-idoc-java-mapping
    /people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm
    /people/sravya.talanki2/blog/2005/08/17/outbound-idocs--work-around-using-party
    /people/venugopalarao.immadisetty/blog/2007/01/24/troubleshooting-file-to-idoc-scenario-in-xi
    Thanks
    Vikranth Khimavath

  • XI 3 File to IDoc scenario - Still referencing Old Logical system

    Hi
    Dont know if you can help. I have a file to idoc scenario  using XI 3 to R/3 4.6c system.
    I had the interface working from a third party system XMLHUB to SAP R/3. The Logical system name for the XMLHUB was XMLHUB01 in the SLD which I have set up as a partner profile in R/3. I have recently changed the logical system name to XMLHUBDEV01 in the SLD and created that logical system in R/3 and changed the partner profile to XMLHUBDEV01.
    Unfortunately in the sender information of the IDoc the partner number is still XMLHUB01 and not XMLHUBDEV01. I don't understand where this partner is sent from to get into the control record of the IDoc.
    I have cleared the SLD cache in both the Repository and the directory. Is there somewhere else I should be looking? Any help would be appreciated.
    Regards
    Daniel

    hi daniel...
    this thread wud answer ur query....
    Re: IDOC Payload
    regards..
    vishal

  • Message has error status at outbound side File To Idoc Scenario

    hi ,
    In my File to Idoc scenario , when i go to sxmb_moni , i found that its showing red flag at Outbound Status Tab and showing message "Message has error status at outbound side".
    When i go to IDX5 and and select my idoc and click on Transaction Id it shows "Password logon no longer possible - too many faile" .
    Please suggest what may be the problem ?
    Regards,
    Rohit

    1. First check the RFC destination name used in receiver Idoc adapter communication channel.
    2. As i said earlier, in sm59 transaction in XI gui, u can check same rfc destination under type 3. There check the logon credentials and the username.
    3. Now goto the R3 system GUI and check in su01 that same user is locked or not. If locked unlock it.
    4. And if u change the password of that user, then do the similar change in XI -> sm59 -> rfc destination logon credential
    Regards,
    Prateek

  • Error while doing a File to IDOC scenario

    Hi Experts,
    I have created a File to IDOC scenario where in i have sent a file which has to pass data to ABSEN1 IDOC.I could see the IDOC reaching R/3 ,but with the status 56: "EDI: Partner profile inbound not available"
    I have checked with all the configurations and couldnt find where it went wrong.
    Kindly help me in this regard.
    Thanks.

    Hi
    Check the inbound parameter and the process code.
    To find Process code for IDoc use Tcode WE42.
    ALE idoc trouble shooting use
    Troubleshooting of ALE Process
    look also this configuration
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6bd6f69a-0701-0010-a88b-adbb6ee89b34

  • How to handle the control records in case of file to idoc scenario.

    Hi All,
    can you please clarify me how to handle the control records in case of file to idoc scenario.

    Hi,
    In File to Idoc scenario even though you selected apply control record values from payload and you are not getting those correct values which you have provided in the mapping.
    Also check the checkboxes Take sender from payload and Take receiver from payload along with the Apply control record values from payload checkbox
    Regards
    Seshagiri

  • About FILE to IDOC scenario

    Hi Experts,
    i need some help for doing file to idoc scenario.
    1. what are the configurations we must do while doing this scenario?
    2. How to communicate with Legacy system to sap system?
    3. How to create the business and logical systems for SAP systems in SLD?
    4. How to define parameters in communcation in ID?
    5. what work shold be done using SM59 and WE20? and specify the steps please?
    6. finally if u having word file please send from the creation of logical system for sap system?
    thanx.

    Go thru below mentioned links.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/73527b2c-0501-0010-5398-c4ac372c9692
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6bd6f69a-0701-0010-a88b-adbb6ee89b34
    once you go thru them you will find answers for questions.
    thanks,
    Venkat

  • File to IDOC scenario-no messages in SXMB_MONI

    Hi all,
       I know this is asked so many times ,I checked some links but couldn;t find out the gap where it happened.
    I am doing a File to IDOC scenario through XI mapping.
    I am not getting any messages in SXMB_MONI.
    When I check Communication Channel monitering in Runtime Workbench, it shows processing successfully, then it should generate messages in SXMB_MONI and intimate whether the scenario created is correct or not right!
    Please help.
    My scenario goes like this:
    Sender : Business service(Some file location)
    Used File adapter for sender communication channnel.
    Receiver : Business system(SAP R/3)
    Used IDOC Adapter for receiver communication channel.
    One more thing is,do I need to create logical system for Business service also?If so, where do I maintain it?(In SAP R/3 or in XI system?)
    Till now,I maintained my XI system as logical system in WE20 and I didn't create any logical system for business service in any system.Does it create main problem?

    Hi , I am able to poll the files from file location now.and I am receiving IDOC into SAP R/3 with status 56.I already created partner for file path as a logical system and assigned inbound parameters with respective message type . Even the status shows :
    An inbound partner profile could not be found with the following key:
    /LSDEMO/LS//DEBMAS////
    This involves the key fields of table EDP21:
    -SNDPRN  partner number of sender
    -SNDPRT  partner type of sender
    -SNDPFC  partner function of sender
    -MESTYP  logical message type
    -MESCOD  logical message code
    -MESFCT  logical message function
    -TEST    test flag
    I already manitained following data and there is one record in EDP21.
    SNDPRN  = LSDEMO  
    SNDPRT  = LS
    SNDPFC = LS
    MESTYP   =  DEBMAS
    MESCOD = space
    MESFCT = space
    TEST = space
    EVCODE   = DEBM
    SYNCHK = X
    METHOD = space
    USRTYP = space
    USRLNG = space
    INMOD = space
    DCART = space
    And please let me know whether I have to maintain outbound parameters  also for my partner in XI system.I didn't see any difference even I maintained it.
    And my IDOC takes another port rather than I mentioned in my SNDPRN(sender port) of my IDOC control record in message mapping.Let me know whether it's mandatory to maintain port name with SAP<XXX>convension,because IDOC in R/3 is picking the port with that naming convension.
    Edited by: Jaya on Feb 26, 2010 10:17 AM
    Edited by: Jaya on Feb 26, 2010 10:27 AM

Maybe you are looking for

  • Delivery creation not possible

    Hi, I'm creating a delivery but system doesn't allow it, how can I solve the above?: No schedule lines due for delivery up to the selected date                                                                                Message no. VL248          

  • Multiple instances of ECM 11g on one server

    I've read a few posts about installing multiple instances of ECM 11g on one server, but I have a few questions. My current set up is A single Windows 2008 Server R2 server 8 gb RAM Weblogic 10.3.5 1 install of ECM 11g in the base_domain Database is O

  • Can I change resolution and embed font in cloud acrobat?

    I need to be able to change resolution on one manuscript pdf, so I purchased the monthly cloud acrobat, but now I'm not seeing the capability to change resolution on the document. I don't have an ongoing need for high resolution pdfs, so my normal MS

  • How do I transfer complete iPhoto Events on a MacBook Pro to Aperture Projects on an iMac?

    I take the MacBook Pro with me on trips and will download images from cameras to iPhoto, typically on a nightly basis.  I will always delete the clunkers, but will also do some preliminary iPhoto or Aperture editing when time allows.  At the end of t

  • How to track a file

    how can i track a file . ie i have some files ,in which bank accoutn details are there . i have to find the every accounts final balance . i have to read line by line (i have done that using streams ). i want track which are read lines and i have to