IDOC mapping 1 to 0..unbounded problem in PI 7.1

All,
We've recently implemented SAP PI 7.1 but we face an issue at the moment. Let me describe the case
We have a Source message which is the DEBMAS IDOC.
Within the IDOC we use mappings for Header data and for Detail Data.
Mapping the header data is no issue that is a 1 to 1 message mapping to our canonical data.
BUT
When we want to use the message split mapping in order to extract the detail data PER line we have discovered a problem.
When within  a message mapping or within the operation mapping we use as Source the IDOC ( occurancy 1 ) and the target we take our detail canonical message (occurancy 0..unbounded) we are getting the message in our mapping that the IDOC cannot be resolved.
When we change the target occurancy to 1 then the mapping works well.
Is there any one facing the same issues as we do.
thanks in advance

This is an issue with queues with different length. You should always avoid this, as you cannot be sure, what happens.
Instead of assigning a single entry queue to a target that expects a multiple entry queue, you should go for a generating function. A generating function delivers as many queue entries as requested.
In your scenario, just use an empty constant. Of you have a value to be repeated, use CopyValue.
Regards
Stefan

Similar Messages

  • IDoc mapping for VMI

    Hello,
    We'd like to store the idoc data extracted from EDI 852 inbound transaction in an infocube for DP. SAP Note 154604 suggests that trx <b>/sapapo/map_tser</b> can be used for specifying the infocube.
    However, in SCM 4.1, this trx has a field for PA only, not infocube. I was wondering how to pull the data into infocube.
    Any suggestions would be appreciated.
    Thank you,
    Malli

    Hello,
         I'm afraid that i can not help you.
          I am witting you because i am trying to get information about VMI/ SMI implementation, for ex. IDOC mapping, best practices, etc.
          I will be appreciate if you can provide me this information.
    Thanks&Rgds
    Angélica

  • Need to generate 2 idoc"mapping issue"

    Hi Experts,
    When the Purchase_order_type is coming like HIGH,REGULAR,NEW,BOUNCED. In this case i need to generate 2 idoc, based on HIGH is one and Other than HIGH is one, even though if it's REGULAR,NEW,BOUNCED.
    I can't generate. pl suggest
    rgds
    selvam

    Hi,
    Please make sure you will sort the data in your select query.
    Now, you need to have two idocs in mapping. Click on Duplicate Subtree to have second IDOC. Now lets assume, your first IDOC represents mapping when ORDER TYPE is HIGH and your second IDOC represents mapping when your ORDER TYPE is not equal to HIGH that is NEW, BOUNCED, REGULAR etc.
    I have defined Source and Target data type as follows.
    Source Data Type:
    SDN
       <Row>
          <CQ_NO/>
          <ORDER_TYPE/>
          <LINE_NO/>
       </Row>
    Target Data Type:
    SDNTarget
       <IDOC>
          <Node>
             <CQ_NO/>
             <ORDER_TYPE/>
             <ItemNode>
                <LINENO/>
             </ItemNode>
          </Node>
       </IDOC>
    Mapping for IDOC 1:
    IDOC:
    Order Type -->Fix Values --> remove context
    Fix Values (This should have default u201Cfalseu201D and HIGH = true)
    Concatenate Output of point 1 with CQ_NO (Context of CQ_NO should be at SDN)
    Output of point 3 --> Split by value (value changed) -->collapse context
    Output of point 4 will be first input to u201CStart withu201D function and second input will be constant u201Ctrueu201D
    Output of Point 5 --> create if --> IDOC
    Node:
    Map with constant
    CQ_NO:
    Order Type --> Fix Values --> remove context
    Fix Values (This should have default u201Cfalseu201D and HIGH = true)
    Concatenate Output of point 1 with CQ_NO (Context of CQ_NO should be at SDN)
    Output of point 3 --> Split by value (value changed)
    User Format By example. Pass CQ_NO (Context of CQ_NO should be at Row) as first input and second input should be output of point 4.
    Pass Output of format by example that is point no 5, to collapse context --> Split by value (Each Value) --> CQ_NO
    ORDER_TYPE
    Order Type --> Fix Values --> remove context
    Fix Values (This should have default u201Cfalseu201D and HIGH = true)
    Concatenate Output of point 1 with CQ_NO (Context of CQ_NO should be at SDN)
    Output of point 3 --> Split by value (value changed)
    User Format By example. Pass ORDER_TYPE (Context of CQ_NO should be at Row) as first input and second input should be output of point 4.
    Item Node:
    Order Type --> Fix Values --> remove context
    Fix Values (This should have default u201Cfalseu201D and HIGH = true)
    Concatenate Output of point 1 with CQ_NO (Context of CQ_NO should be at SDN)
    Output of point 3 --> Split by value (value changed)
    Output of point 4 will be first input to u201CStart withu201D function and second input will be constant u201Ctrueu201D
    Output of Point 5 --> create if --> IDOC

  • File to Idoc Mapping Problem

    Hi all,
    i'm getting an error from SXMB_MONI in a scenario File to Idoc.
    I have done the mapping from source file and Idoc CREMAS03, when i try to test from Integration Repository it's all ok, but when the scenario is executed i find this error in Idoc Adapter :
    <SAP:P1>MSGGUID EF7E2140A08811DDBE1202004C4F4F50: Tag #TEXT found instead of tag IDOC BEGIN=</SAP:P1>
    The field BEGIN in idoc structure is filled with constant value 1, than i dont understand the error.
    This is the xml source file :
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:Vendor xmlns:ns0="urn:tbit40:workshop:group01:legacy">
    - <Address>
      <Country>IT</Country>
      <Zip>001</Zip>
      <City>ROMA</City>
      <Street>SATTA</Street>
      </Address>
      <Currency>USD</Currency>
      <SearchTerm>TEST</SearchTerm>
      <LastName>GUIDA</LastName>
      <VendorNumber>44332</VendorNumber>
      </ns0:Vendor>
    Any help is really appreciated.
    Thanks.

    Hi all and thanks for your answer.
    My problem is that for what i can see all Idoc attribute (like the attribute BEGIN) are mapped with constant value.
    In taget source i can see :  BEGIN = Constant([value=1])
    What i dont understand is why when i execute the scenario it ends with this message :
    <SAP:P1>MSGGUID EF7E2140A08811DDBE1202004C4F4F50: Tag #TEXT found instead of tag IDOC BEGIN=</SAP:P1>
    It seem to me that the tag BEGIN is not filled with value, i also tried to copy the source xml file directly from SXMB_MONI  (from payload) and test it in Integration Repository mapping section, but here is all ok and the test end succesfully.

  • Idoc Mapping Problem

    hi,
    I have a file to idoc scenario. Have a header and 5 line items segment on the source. After doing mapping when i test, the message mapping does not ouput all the corresponding nodes in the Idoc structure for each item segment on the source side. The output is only displaying the first two segment from the source. Could someone help with this?
    thx,
    Pradip

    Hi Pradip,
    just check the cardinality of target node - which is mapped to your line item.....it should be 0..unbounded
    moreover, the target node if it under some other node then check the cardinality of the above node, it should also be 0..unbounded
    if you are using any condition for target node generation, then check the condition again.....
    Thanks,
    Rajeev Gupta

  • Complex IDOC mapping problem

    Hello,
    I'm stuck with a complex mapping issue that I can't figure out.  I'm trying to pull 0..N Variant Configuration segments from the ORDERS IDOC and map it into a 0..N XML segment.
    The inbound ORDERS IDOC is structured like this:
    IDOC
    ...E1EDP01  (Item segment 0..N)
    ......E1EDP19 (Product data 0..5)
    ...........Z1EDPIT  (Configuration Data 0..N)
    .................ATUE1   (Description)
    .................ZCODE   (Category)
    .................RTWTB  (Value)
    Target XML:
    Order  
    ....Item  (Item segment 0..N)
    .......Product  (Product data 0..1)
    ............VariantConfig  (configuration data 0..N)
    ....................Description
    ....................Category
    .....................Value
    I need to create a new VariantConfig segment in my XML for every Z1EDPIT segment for that PO Item.  But I need to skip any Z1EDPIT segments when ATUE1 = 'OPTIONS' or when ATUE1 does not exist.
    The problem I'm running into is that my mapping is capable of creating the VariantConfig segment under those conditions but the following mappings used to create the Description/Category/Value are unable to skip the Z1EDPIT segments.
    For example:
    IDOC
    ...E1EDP01 
    ......E1EDP19
    ...........Z1EDPIT 
    .................ZCODE     = REQT
    .................RTWTB     =  5644
    ...........Z1EDPIT 
    .................ATUE1     = Finish
    .................ZCODE    = REQT
    .................RTWTB    = 7712
    The output XML should read:
    Order  
    ....Item 
    .......Product 
    ............VariantConfig
    ....................Description   = Finish
    ....................Category      = REQT
    .....................Value          = 7712
    So I determine to create the VariantConfig segment if ATUE1 exists and does not equal 'OPTIONS'.  So my mapping creates one VariantConfig segment because the second Z1EDPIT qualifies.  But each element within that node is reverting back to the first Z1EDPIT segment.
    I thought the top of the Node (VariantConfig) would determine the context for the following fields.  Therefore, when the 2nd Z1EDPIT segment generates the VariantConfig node then the elements should refer to the current context of the root node (VariantConfig).
    What tools does PI's mapping provide to resolve a situation like this? 
    Any suggestions?
    Thanks,
    Matt

    Job,
    Thanks, for the responses!
    What do you mean by "add a context change for the fields". 
    Is there some mapping function to add a context change or is this a UDF I need to write to handle the context changes when ATUE1 is missing or equal to "OPTIONS".
    In my example:
    VariantConfig:
    ATUE1 (E1EDP01) >mapWithDefault [OPTIONS] equatsS [OPTIONS] -> Not ->createIf->VariantConfig
    Sub Element
    Category
    ATUE1 (E1EDP01) >mapWithDefault [OPTIONS] equatsS [OPTIONS] -> Not ->ifWithoutElse>ZCODE->Category
    The problem is that this does not keep the ATUE1 and the ZCODE in the same Z1EDPIT segment.  So I get the first ZCODE value when I only want the 2nd.   Even if I insert a context change I can't say for sure that next time I won't have 5 Z1EDPIT segments missing the ATUE1 segment before I find my first good segment that I need to map.
    ...confused...
    Thanks,
    Matt

  • Problem with Idoc Mapping

    Hi,
    Target field is : Bank Address 1:
    Source mapping: it is a Idoc with the following requirements
    IF E1IDB02 BA-FIIKWAER = CNY and LEN(E1IDB02 BB-FIIBKNAM)<=11
          then MID(E1IDB02 BB-FIIBKNAM,2,10)
    IF E1IDB02 BA-FIIKWAER = CNY and LEN(E1IDB02 BB-FIIBKNAM)>11
           then MID(E1IDB02 BB-FIIBKNAM,12,11)
    IF E1IDB02 BA-FIIKWAER <> CNY and LEN(E1IDB02 BB-FIIBKNAM)<=35
            then MID(E1IDB02 BB-STRAS,1,35)
    IF E1IDB02 BA-FIIKWAER <> CNY and LEN(E1IDB02 BB-FIIBKNAM)>35
           then MID(E1IDB02 BB-FIIBKNAM,36,35)
    E1IDB02 -- is a segment name with occurence 1..1
    BA and BB are the qualifiers
    FIIBKNAM is the field name.
    I am unable to map this as the condition has to be given with two qualifiers at a time.
    Can some one help me out on this. Can we define the UDF where we can store this information as temporary variable. If UDF can be defined, please let me know with the details.
    Regards,
    Manoj

    HI,
    Yes, but you have to write your own UDF ,
    but i can give example use this to solve your problem.
    IF E1IDB02 BA-FIIKWAER = CNY
    then MID(E1EDKA1 BE-NAME1,12,11)
    1)
    input E1EDKA1 BE-NAME1,E1IDB02 BA-FIIKWAER
    if (E1IDB02 BA-FIIKWAER = CNY) {
    return substring(E1EDKA1 BE-NAME1,12,11);
    2)
    input E1EDKA1 BE-NAME1,E1IDB02 BA-FIIKWAER
    IF (E1IDB02 BA-FIIKWAER <> CNY ) && ( (E1EDKA1 BE-NAME1).length<=35)
    return substring(E1EDKA1 BE-STRAS,1,35);
    3)
    IF (E1IDB02 BA-FIIKWAER <> CNY) && ((E1EDKA1 BE-NAME1).length>35)
    return substring(E1EDKA1 BE-NAME1,36,35);
    Before map this first map with same level of empty constant and concat it, if it is empty,later map with substring.
    Regards
    Chilla

  • JDBC to IDoc Mapping Problem

    Hello,
    I have a connection going from a SQL (via a JDBC connection), mapping into an IDOC.  Connections all work, but for some reason when I turn on the communication channel to pull from the database through a SELECT statement, I only get the header of the Idoc (below).  I have tried many different things and cannot see why the mapping does not seem to be working.  When I load the test data as a test instance in the mapping, it works.  Any help would be appreciated.
    Thank you.
      <?xml version="1.0" encoding="UTF-8" ?>
      <CRMXIF_PRODUCT_MATERIAL_SAVE01 />

    Hi,
    Document Name
    The document name is inserted in the message as the main XML tag. The default value is resultset.
    Document Namespace
    The namespace is added to the document name.
    See the example below
    The system converts the table resulting from the query SQL statement into a valid XML document and sends it to the Integration Engine. The document looks like this:
    <resultset>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    </resultset>
    Regards
    Chilla..

  • Query on Context Handling ( File to IDOC mapping )

    Hi All,
       I've a scenario from file to IDOC. The structure of file is as follows.
    Struct ( occurs unbounded times )
    |
    - Name
    Str. of IDOC
    Node
    |
    - name1
    - name2
    - name3
    - name4
    The problem is that the name in file can occur many times.
    So if say name occurs 2 times in the file then it has to be mapped to name1 and name2 in IDOC.
    If Name in file occurs 3 times it'll be mapped to name1, name2 and name3 in IDOC.
    Am looking for some help.
    Thanks,
    Joe.

    Hi Joe,
    For every name in the file, you will have to map the value to the name field in the IDoc. Use SplitByValue node function available in the graphical editor. You will be able to achieve this mapping. For more about the usage, here's the documenation and a blog(where an example has been given):-
    http://help.sap.com/saphelp_nw04/helpdata/en/21/3bb8c495125e4eb5969f0377885fe0/frameset.htm
    /people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
    Regards,
    Sushumna

  • Flat file to idoc mapping issue

    Hi Gurus,
    i had a flat file format in sender side as below:
    H_ID     TYP_CODE    line_elemet      Quantity
    5896  STANDARD                       1.transmitter    1
    5896                  STANDARD       2.xxxxxxxxx           1
    5896                   STANDARD      3.yyyyyyyyy  2
    6895                  STANDARD       1.aaaaaaaaa        1
    9436                  STANDARD       1.bbbbbbbbb          4
    9436                  STANDARD       2.ggggggggg          3
    The above file need to be send to an Idoc.
    for which same header_ID values should create only one header segment, under that many a line segments should create as many line items appear on that header_id value.
    Here my query is how to suppress the repetetive header values to create onlyone header segment. And how to create as many line_item segments as the number of line items appear.
    points obvoius for the response
    Thanks in advance,
    Sekhar.

    About map problem I suggest youn to see the following link that are really helpful to improve knowledge about mapping:
    /people/sravya.talanki2/blog/2005/08/16/message-mapping-simplified--part-i
    /people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
    I suggest you to see the following link to learn more about mapping:
    Mapping functionality in XI
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/9202d890-0201-0010-1588-adb5e89a6638
    SAP Exchange Infrastructure - Graphical_Mapping
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6658bd90-0201-0010-fbb6-afe25fb398d3
    SAP Exchange Infrastructure - Graphical Mapping Exercise
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/fd5ebd90-0201-0010-d697-91374d5b5190
    SAP Exchange Infrastructure - Graphical Mapping - Advanced
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/be05e290-0201-0010-e997-b6e55f9548dd
    SAP Exchange Infrastructure: Mapping Patterns - Understand Context Handling in Message Mapping - Webinar Powerpoint
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f59730fa-0901-0010-df97-c12f071f7d3b
    SAP NetWeaver Exchange Infrastructure Mapping Troubleshooting - Webinar Powerpoint
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e01e9400-9e81-2910-20a5-a862945a5e98
    Mapping Lookups a RFC API
    Mapping lookups - RFC API
    XI 3.0 New Mapping Features
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/8a57d190-0201-0010-9e87-d8f327e1dba7
    I hope these links will be usefull.
    Regards,
    Salvatore

  • Idoc Mapping

    Hello everybody,
    I have the next scenario Oracle DB-> XI-> Idoc PAYEXT,  now the problem is that I get the error in the message mapping that Mapping not sufficiently defined, my strcutures look fine, so is there a way to know all the required fields for an Idoc, there is no fields in red as in other ocassions indicates mapping required, any suggestions????, thanks in advance.
    Regards,
    Julio Cesar

    Hi Julio,
    As Aamir suggested, you can used TC :WE60 to check the idoc structure and mandatory fields.
    Just in addition to Aamir, In most of the idocs when you assign constant to a idoc segment in order to generate segment you need to populate the mandatory fields of that segment as well.  So you need to assign values  to mandatory fields of segment only if you want to generate that particular segment ( By assigning constant / mapping input element value for repeatation.)
    In you case can you please check if you are trying to generate some segment, but you havent mapped mandatory fields of that segment.
    Hope this will help.
    Let us know if you need more detals.
    Nilesh

  • Automatic (EDI) vendor posting fails - can I update the IDOC mapping?

    Hi -- I am testing a new intercompany sales process and having trouble with returns. The INVOIC01 IDOC for the vendor posting (document type VC - Vendor Credit FI) is failing because text is required on the line item (field SGTXT on BSEG). So it appears that the IDOC doesn't have this text field mapped.
    If I can identify a field in the existing IDOC to use for the text, is there a way that I can add that mapping? For example, let's say I want to populate the BSEG text with field BELNR on segment E1EDP01, is there a way to specify in the INVOIC01 idoc that this field should be plugged into BSEG-SGTXT? I don't have EDI experience, so this is all new to me!
    Thanks
    Allison

    Hi Allison,
    Since it's just for testing, just change the Text field on FI field status group become optional entry. It will solve your problem rather than modifying the standard IDOC
    Regards,
    Gumanti

  • Help!! - File to Idoc Mapping with Nested structure

    Scenario:
    I have an inbound file that has three nested records.
    eg. A00, B00 and C00. C00 is nested structure of B00 and B00 nested structure of A00. All these structure can repeat N number of times in a file.
    How do I map this to IDoc structure that have one segment each for the three structures in the file and nested in the same way.
    Question: How is the parent child relationship established?
         Suppose I have a file
         A00 1234 Sam 29
              B00 london LE3 XYZ
              B00 US 123456
                    C00 2 XYZ
               A00 5678 Joe 22
            B00 US 23456
         If I make a nested structure and then say in the file conversion properties that A00 go to segA and then B00 go to segB, but then when I come back to A00, how do I move the data to the A00?
    Thanks in Advance
    Rgds

    From what you have layed out, you can create a data type with 3 children, all 1..unbounded cardinality, each containing their own elements.  You say they are nested, but the example you gave isn't nested... it's just A's followed by B's followed by C's.  If that is the case, you can then use a data type w/ 3 subelements (A, B & C) and each of those is actually a container with the real attributes of that line in your file.  (I can email you a schema quickly if you need it)
    If you are saying they can occur like this:
    A00 1234 Sam 29
    B00 london LE3 XYZ
    B00 US 123456
    C00 2 XYZ
    B00 US 23456
    C00 2 XYZ
    THEN they are nested - ie B's & C's repeat under any A.  Then you must create segment B as a subelement of segment A instead of on the same level, then bury C under B. (I find this easiest w/ a text tool rather than inside XI, as I can cut/paste segments where I want them to belong...)
    Good luck with setting up content conversion on that file adapter... We have done this a few times, and it can be quite interesting.
    If you have trouble with the schema, you can post your email & I can give you a quick example.
    Message was edited by: Amanda Derringer

  • File - XI - Idoc : mapping issue

    Hello gurus,
    I have a mapping issue:
    I have a mapping between FICABillingNotification to FKK_EBS_DOC_TREE
    Some fields are mapped one to one, others a mapped to constants.
    But for some reason i don't know, not all fields get the right value.
    For example:
    Working:
    Constant 1 --> BEGIN
    Constant LS --> RCVPRT (Receiver Partner Type)
    Not working:
    Constant FILE-->RCVPOR (Receiver Port)
    I had an other value the first time i tried it, but now i changed it to FILE but this value is not used by the mapping.
    Any help would be welcome
    Thanks
    Thomas
    Edited by: Thomas Pary on May 28, 2008 3:36 PM

    This was allready done (sorry i didn't answered that question).
    But Ok now i see, that for this RCVPOR the value of the constant "FILE" is mapped, and i can see it in the payload in SXMB_MONI after the mapping. But it isn't populated to the IDoc field :-s
    Another problem is, that like the one said above, some of my values are not mapped :
    <FICAExternalBilling>
    --<DocumentHeader> mapped to EF1KK_EBS_DOC_HEADER
    <BillFromId>25001254</BillFromId> mapped to REF_DOC_NUMBER
    <PostingDate>20080520</PostingDate> mapped to POST_DATE
    <DocumentDate>20080520</DocumentDate> mapped to DOC_DATE
    <OriginTypeId>IV</OriginTypeId> mapped to EXT_DOC_TYPE
    <ObjectType/>
    <ObjectKey/>
    <PendingCommitmentGroupID/>
    <InvoiceReferenceID/>
    <DisputeDocumentReferenceID/>
    --</DocumentHeader>
    The value of OriginTypeId is not mapped, but the value of DocumentDate and PostingDate are mapped.

  • FILE TO IDOC MAPPING Query

    Hi Experts
    I have facing some confusion when i am doing mapping for my scenario FILE to IDOC.
    The IDOC Structure is as follows
    HeaderRecord  0-1
    DataRecord1   0-unbounded
         (Subnode)DataRecord2 0-unbounded
          (Subnode)DataRecord4   0-unbounded
    DataRecord5 0-unbounded
          (subnode) DataRecord6 0-unbounded
    TrailerRecord 0-1
    when the DataRecord1 is executed, an idoc is generated and all the DataRecord2,DataRecord4,DataRecord6 shld come under that particular Idoc. And when another Idoc is generated,all the DataRecord2,DataRecord5,DataRecord6 shld come under that particular Idoc.
    How to achieve mapping for this??
    please help me out.
    Edited by: vemuganti naga phalguna on Oct 27, 2010 7:56 AM
    Edited by: vemuganti naga phalguna on Oct 27, 2010 7:59 AM

    Hi
    1) Source file is Text File.
    sample source data.
    A|20101006142345|SAPQMP|40|
    B|5999|R00003D||N|20072008|Unknown|
    C|T0014|M1556||colourless Pale yellow||Receipt-Bulk|1|Yes|Y|Text||
    C|T0001|M1556||Limpid liquid ||Receipt-Bulk|1|Yes|Y|Text||
    C|T1379|M1398|18||23|Receipt-Bulk|1|Yes|Y|Number|mm²/s|
    B|5998|R00014A||N|20072008|Unknown|
    C|T0014|M0211||2.0||CoA|1|No|Y|Text||
    C|T0014|M0211||2.0||Receipt-Bulk|1|No|Y|Text||
    C|T0014|M0211||2.0||Transfer|1|No|Y|Text||
    C|T0051|M0271|97|||CoA|1|No|Y|Number|None|
    C|T0073|M1356|Pass|||Receipt-Bulk|1|No|Y|||
    C|T0073|M1356|Pass|||Transfer|1|No|Y|||
    C|T0025|M0331||0.880||CoA|1|No|Y||g/ml|
    C|T0025|M0331||0.880||Receipt-Bulk|1|No|Y||g/ml|
    C|T0025|M0331||0.880||Transfer|1|No|Y||g/ml|
    C|T0001|M1556||Clear & Bright ||CoA|1|No|Y|Text||
    C|T0049|M0341|28.0||32.0|CoA|1|No|Y|Number|mm²/s|
    C|T0049|M0341|28.0||32.0|Receipt-Bulk|1|No|Y|Number|mm²/s|
    C|T0049|M0341|28.0||32.0|Transfer|1|No|Y|Number|mm²/s|
    C|T0042|M0422|||-15|CoA|1|No|Y||°C|
    C|T0092|M0578|||16|CoA|1|No|Y|Number|% Loss|
    C|T0021|M0199||||CoA|1|No|Y||minutes|
    C|T0039|M1453|Mktble|||CoA|1|No|Y|||
    C|T0050|M0341||5.1||CoA|1|No|Y|Number|mm²/s|
    C|T0050|M0341||5.1||Receipt-Bulk|1|No|Y|Number|mm²/s|
    C|T0050|M0341||5.1||Transfer|1|No|Y|Number|mm²/s|
    C|T0026|M0412|210|||CoA|1|No|Y|Number|°C|
    Z|20101006142355|SAPQMP|40|
    where Records A indicate File Header, Z indicates File Trailer
    Recodrs B indicateds Material header and Would be repeating multiple times
    No. of B Records = No. of Idocs generated with corresponding C records data which indicates Component Rows (multiple)
    i.e as many B records file contains, that many Idoc will be created
    For Mapping I require B and C Records. Field Separator is Pipe | symbol
    I need to Ignore A B C Z
    How to define the source structure and the respective FCC Parameters
    please help me out

Maybe you are looking for