Dynamic splitting of messages

All,
We have a file input which has around 500K records. These records needs to be translated against a legacy system. The legacy system tells how many records it can accept in a single call during the handshake call and it varies from time to time.
Is there way to split the original message with 500K records into different messages with "x" records / message. x - is the number we got from the legacy system during the handshake.
How can we do this dynamic mapping?
Thanks.

Hi
Pls go thrugh the links below
http://help.sap.com/saphelp_nw04/helpdata/en/ce/bb2c421f3fda2ce10000000a1550b0/frameset.htm
You can do this using multi-mapping and BPM. Please have a look at this:
http://help.sap.com/saphelp_nw04/helpdata/en/21/6faf35c2d74295a3cb97f6f3ccf43c/content.htm
/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
/people/sameer.shadab/blog/2005/09/23/an-interesting-usage-of-variable-substitution-in-xi
/people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
Use node function SPLIT BY VALUE.
This link has the descrption of the same,
http://help.sap.com/saphelp_nw04/helpdata/en/21/3bb8c495125e4eb5969f0377885fe0/content.htm
Also, it is possible to create N messages without BPM. Check this blog for this,
/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
/people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
pls reward if helpful

Similar Messages

  • Dynamic Split Join:Parallel flow using OSB

    Hi,
    I am implementing a dynamic split join in OSB,where in the for -loop i am invoking a database adapter.
    If I select parallel='yes' in the for-loop settings, I get a random number of records from the database as an output.
    While on the other hand, on running the for-loop sequentially, i get the exact number of records i am expecting.
    Could anybody figure out why is this happening?
    Regards,
    Tarun

    If I understand correctly, this is what you are doing:
    Configure a For loop based on a repeating element in source XML (for ex. for each customer id in xml message).
    Inside each loop you are making a DB lookup and getting one record for each element (for ex. customer details of each customer id)
    Finally you are aggregating them in the same variable (join)
    The problem that you see is that if you do it in parallel then you do not see details of all customers in the out variable?
    If yes, then can you please let me know how you are updating the details of each record in the out variable.

  • How to split the messages in the mapping

    Hi Gurus,
    I need to split the message into two XML message based on the value in  the plant and sent it to two receivers.
      How to do using Graphical mapping.
    Im working in PI7.0. I dont know how to use the enhanced receiver determination. PL guide me.
    This is my input message format
    <ns0:Namespace>
       <row>
          <PlantCode>10<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
      <row>
          <PlantCode>40<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
      <row>
          <PlantCode>20<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
      <row>
          <PlantCode>50<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
    <ns0:Namespace>
    My output message should be
    Message1
       <row>
          <PlantCode>10<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
       <row>
          <PlantCode>20<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
    Message2
       <row>
          <PlantCode>40<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
       <row>
          <PlantCode>50<PlantCode>
          <element1>
          <element2>    
          <element3>
    <row>
    Based on the plant i have to split the message
    1. If plant is 10 or 20 it has to go to message 1
    2. If plant is 40 or 50 it has to go to message 2.
    How to do...
    Regards,
    Rama

    1.Create a message mapping.
    2.In the mapping editor, switch to the Messages tab page
    3.Specify the same  target message type 2 time by choosing +
    4.Switch to the Design tab page
    PlantCode---removeContext---equalS
              constant[10]/                     \
                                                   OR------ifWithoutElse-------Message1
                                                  /              plantcode   /
    PlantCode---removeContext---equalS
              constant[20]/
    PlantCode---removeContext---equalS
              constant[40]/                     \
                                                   OR------ifWithoutElse-------Message1
                                                  /              plantcode   /
    PlantCode---removeContext---equalS
              constant[50]/
    Do 1 to 1 mapping between row,plantcode,element1,element2,element3 from source to target structure
    create 2 target message Interface for the same target message type
    Finally Create an interface mapping and reference the both target interfaces in target interfaces. Enter your message mapping in the interface mapping.(1--source Interface and 2 target Interfaces)
    In ID, Interface determination choose Enhanced radio button and under inbound interfaces add both the target Interfaces

  • How To split large message using File Adapter

    Hello everyone,
    Here is my scenario FTP > XI > BI.
    I got 2 questions:
    (1) I am getting large message around 70 MB file.
        How we can split the message into multiple files 10 MB each before processing the file into XI?
    (2) Is there is any way we can find out size of file which is on FTP  without contacting FTP admin?    
        through XI before processing the file?
    Thanks
    Vick

    hi vick,
    check the blog
    Zip or Unzip your Payload with the new PayloadZipBean module of the XI Adapter Framework                                   
    Working with the PayloadZipBean module of the XI Adapter Framework
    SAP XI acting as a (huge) file mover                                   
    The specified item was not found.                                   
    Managing bulky flat messages with SAP XI (tunneling once again) - UPDATED                                   
    The specified item was not found.                                   
    regards
    kummari

  • Split one message and create N Files on target side based on FieldName

    Hi Experts
    How to split one message into N messages
    I have used BPM and I have put
    One Receiver Step
    One Transformation Step and
    One Send Step.
    In Receiver step I have used Correlation as Field2
    In Tansformation Step I have done One to One Mapping
    But In receiver Side only one File is creating.
    Message Structure is
    <Main_MT>.... 1...1
    ........<test>01</test>.... 1...1
    ...........<Sub_MT>...... 0...Unbound
    ................<Field1> </Field1>
    ................<Field2>123</Field>
    ..........</Sub_MT>
    ..........<Sub_MT>...... 0...Unbound
    ................<Field1> </Field1>
    ................<Field2>234</Field>
              </Sub_MT>
    </Main_MT>
    How to resolve this problem
    Thanks & Regards
    Sowmya

    Hey Jayson,
    I dint search the blogs using the keyword " mutiple mapping". The given two blogs I had used for creating my first 1:n mapping, so their names are by heart to me.
      I believe both the blogs provided by me help in creating the mutiple seperate messages on the target end.
    The Claus's blog covers more detailed mapping logic for message split and the Jin's blog covers the ID pieces needed to be configured when we want to create mutiple messages on the target end.
    Pardon me if I have misconstrued your point.
    Thanks,
    Pooja

  • How to Split the message content?

    Hi ....
        I am having an input File like below format.
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_ISO8583 xmlns:ns0="http://axis.com/bank_statement">
       <Field1></Field1> -
    0 to 1
       <Filed2></Filed2> -
    0 to 1
       <Filed3></Filed3> -
    0 to unbounded
    </ns0:MT_ISO8583>
    Here Field 3 is repeating many times. The value in the Field 3 has to be splitted and should be mapped to the target feilds. Field 3 will stop repeating until when the first value in the field 3 is N.
    The length of the field is 142 characters in length.
    The field should be splitted based on the following structure.
    More data flag : 1 char (u2018Yu2019/u2019Nu2019) This indicates whether there are more records for the given criteria.
    Number of statements : 2char (00 to 20) Number of statements in this fetch
    The following are repeated as many number of statements
    Transaction date : 8 char ( YYYYMMDD )
    Transaction Id : 9 char (right justified, left padded with spaces)
    Part tran serial num : 4 char (right justified left padded with spaces)
    Tran Type : 1 char ( C - Cash, T - Transfer, L - Clearing )
    Tran sub type : 2 char ( BI, CI, NP, NR)
    Debit credit indicator : 1 char ( D - Debit, C - Credit )
    Tran value date : 8 char ( YYYYMMDD )
    Transaction Amount : 17 char ( with decimal )
    Transaction particulars : 50 Char (left justified, right padded with spaces)
    Transaction Posted date : 14 char ( YYYYMMDDHHMISS )
    Instrument number : 8 char (right justified, left padded with spaces)
    Balance at the end of the transaction : 17 char ( with decimal )
    Can you help me , how to split the message content in the field3?
    Below is the sample message.
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_ISO8583 xmlns:ns0="http://axis.com/bank_statement">
       <Field1>930000</Field1>
       <Filed2>234259901406</Filed2>
       <Filed3><Y0820090127S275433861005TBIC20090127 4872.14EDC/212-213-/M000044375340045 20090127151 959 32663.7620090127S278456264276TBIC20090127 5290.45EDC/214-215-/M000044375340045 20090127205840 37954.2120090131S299799314797TBIC20090131 1883.88EDC/216-216-/M000044375340045 20090131104028 39838.0920090202S31532814 662TBIC20090202 3105.37EDC/217-217-/M00004 4375340045 20090202121514 42943.4620090205S337981634779TBIC20090205 2052.20EDC/2 18-218-/M000044375340045 20090205104040 44995.6620090205 M53898 1CNPD20090205 42000.00TO CASH/SELF 20090205111633 12824 2995.6620090207S354072734740TBIC20 090207 4429.21EDC/219-219-/M000044375340045 20090207112958 7424.8720090209S3671 72631419TB Field 126: IC20090209 7161.55EDC/220-221-/M000044375340045 20090209122637 14586. 42]]></Filed3>
       <Filed3><Y0820090127S275433861005TBIC20090127 4872.14EDC/212-213-/M000044375340045 20090127151 959 32663.7620090127S278456264276TBIC20090127 5290.45EDC/214-215-/M000044375340045 20090127205840 37954.2120090131S299799314797TBIC20090131 1883.88EDC/216-216-/M000044375340045 20090131104028 39838.0920090202S31532814 662TBIC20090202 3105.37EDC/217-217-/M00004 4375340045 20090202121514 42943.4620090205S337981634779TBIC20090205 2052.20EDC/2 18-218-/M000044375340045 20090205104040 44995.6620090205 M53898 1CNPD20090205 42000.00TO CASH/SELF 20090205111633 12824 2995.6620090207S354072734740TBIC20 090207 4429.21EDC/219-219-/M000044375340045 20090207112958 7424.8720090209S3671 72631419TB Field 126: IC20090209 7161.55EDC/220-221-/M000044375340045 20090209122637 14586. 42]]></Filed3>
       <Filed3><Y0820090127S275433861005TBIC20090127 4872.14EDC/212-213-/M000044375340045 20090127151 959 32663.7620090127S278456264276TBIC20090127 5290.45EDC/214-215-/M000044375340045 20090127205840 37954.2120090131S299799314797TBIC20090131 1883.88EDC/216-216-/M000044375340045 20090131104028 39838.0920090202S31532814 662TBIC20090202 3105.37EDC/217-217-/M00004 4375340045 20090202121514 42943.4620090205S337981634779TBIC20090205 2052.20EDC/2 18-218-/M000044375340045 20090205104040 44995.6620090205 M53898 1CNPD20090205 42000.00TO CASH/SELF 20090205111633 12824 2995.6620090207S354072734740TBIC20 090207 4429.21EDC/219-219-/M000044375340045 20090207112958 7424.8720090209S3671 72631419TB Field 126: IC20090209 7161.55EDC/220-221-/M000044375340045 0090209122637 14586. 42]]></Filed3>
       <Filed3><N0820090127S275433861005TBIC20090127 4872.14EDC/212-213-/M000044375340045 20090127151 959 32663.7620090127S278456264276TBIC20090127 5290.45EDC/214-215-/M000044375340045 20090127205840 37954.2120090131S299799314797TBIC20090131 1883.88EDC/216-216-/M000044375340045 20090131104028 39838.0920090202S31532814 662TBIC20090202 3105.37EDC/217-217-/M00004 4375340045 20090202121514 42943.4620090205S337981634779TBIC20090205 2052.20EDC/2 18-218-/M000044375340045 20090205104040 44995.6620090205 M53898 1CNPD20090205 42000.00TO CASH/SELF 20090205111633 12824 2995.6620090207S354072734740TBIC20 090207 4429.21EDC/219-219-/M000044375340045 20090207112958 7424.8720090209S3671 72631419TB Field 126: IC20090209 7161.55EDC/220-221-/M000044375340045 20090209122637 14586. 42]]></Filed3>
    </ns0:MT_ISO8583>
    Thanks & Regards,
    Leela

    using substring to get values you want, and map to corresponding target nodes except:
       fields3 ->count->Number of statement
    Regards.
    Liang

  • Error when Splitting the Message in Synchronous Sender -BPM

    Hi ALL,
    I has the following Integration Process:
    Receiver-----Synchronous Sender--
    Sender(async)
    When iam trying to Split the Message in Synchronous Sender
    where the receiver for Synchronous send message is a HTTP adapter iam getting the following Error in SXMB_MONI
    "Messages in multi message format can be sent to one adapter engine only ".
    Is there any solution for this?Its urgent
    Is there any solution that can split and send the messages individually to the HTTP  so that i can Split the message inside a BPM and use the BPM to send each individual message seperately.
    Please Help me in this Issue its Urgent
    Thanks
    YeswanthRaj

    Use a transformation step to split the message then use a Block with par for each option and have the sync send in side it. Then send this asynchronously to the system you want to send it to.
    VJ

  • Splitting large message (60MB) based on payload data

    Hi,
    I have a file (Flat) to file (xml) scenario. The source flat file is being read by FCC. Since the source flat file is large (upto 60MB) so I have to split it into small files then I have applied "recordset per messages" in FCC level to split large file into small ones. But the clients requirement is to split the large document based on payload data (that is DeliveryDate). That means I cannt split the message based on number of rows of flat file instead I have to split the file on the basis of DeliveryDate so that after splitting into small files, each small file should contain data for exactly one date (say in one file data for 15th NOV and in another file data for 16NOV and so on).
    Please suggest some solution to split the large file (60MB) based on payload data(DeliveryDate).
    Br,
    Madan Agrawal

    Hi Madan,
    in this case split the message in to different messages like 2 mb file,
    XI doesn't support 60 mb files, U have to split the flat files based one some condition.
    i have same requirement flat file having huge data i split that data using java map.]
    then i processed its work fine for me.
    I think u can also do it,
    But in my case i divided message based on sequence number uniquenumber to diffentiate data.
    if there is any sequence number split the message .
    Regards,
    Raj

  • Split one message to many messages and then put the same webSphere MQ.

    Hi All,
    In the project, I encountered a problem. I had a message with many sid element. I needed to split the message to many message by sid element. and then put those message in the same webSphere MQ queue in turn. Do any one encountered the question?

    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible - follow this blog to do a multi mapping (1:N)

  • Dynamically selection of Message Subject in AS2 adapter. Urgent Help..!!

    Hi All,
    I need to send the message to partner by using AS2 adapter.
    And i need to keep the Message Subject by taking dynamically from the payload message.
    ie. Iam sending the Purchase Order to Partner and i need to pass OrderNO which is coming in one field of my strcture to the message subject.
    How i can select dynamically the Orderno and pass into message subject of AS2 Receiver adapter??
    In the Seeburger AS2adpter manual, they provide the answer by using module parameters like
    http://seeburger.com/xi/common/dtsubject   DYNSUBJECT
    But i don't know how to put particular field into it.
    Any idea abt this?
    Regards
    Deepthi.

    Hi Deepthi,
    I think this would help you in configuring Dynamically selection of Message Subject.
    Supported dynamic attributes are:
    •  dtSubject – if the subject parameter is set in the XI message and the AS2 receiver channel is
          configured to use all non-empty or subject attribute, it will be treated as the message subject
          by the AS2 adapter;
    •  dtAS2FileName – the name of the payload. This is an attribute of the Content-Disposition
          header. With this AS2 is compatible with AS2 Filename Preservation draft.
    •  dtAS2ContentType – for Example application/xml, depending on the payload type
    To enable the usage of Dynamic Attributes, there is a special dedicated section in receiver channel.
    Dynamic attributes are used if the “Use dynamic attributes” setting is checked in the receiver channel.
    If the the setting “Use non-empty attributes” is not selected, all known attributes are used for
    configuration if the attribute is present. 
    Mention Check boxes for these
              Use dynamic Attributes
              Subject
    Dynamically set attributes override static channel attributes. Example: the subject attrib
    in receiver channels overrides the channel attribute.
    Here is an example how to set them. Channel tab “Module”->”Module Configuration”:
    Module Key: 1
    Parameter Name: http://seeburger.com/xi/common/dtsubject
    Parameter Value: DYNSUBJECT
    Message Subject:  This subject will be compared with the subject in the received message. This is used to find the correct channel for the inbound message.
    Wildcards are allowed.
    Regards,
    Varun Reddy.K

  • Split jms messages ?

    Hi,
    Can anybody please advice as to how to split the messages while receiving in a jms queue ?
    I have a receiver jms communication channel and I need to split the messages so that in the outpout we should get 50 records per message. Also, each message will have a current count and total count fields associated which tells them the message number among the total number of messages available.
    Thanks
    V

    Hi Medhaj,
    Ref: http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/600b455f-01cd-2b10-0cab-a50e47a8f800?quicklink=index&overridelayout=true
    Thanks,

  • Adding dynamic split column width to my report

    I'm trying to add a dynamic split-column-width to my report in BI Publisher. I do not have a need for a column header. I tried to add this line to my existing line of code for the cell.
    *<?split-column-width:COLUMN_DATA?>*
    C *<?split-column-width:COLUMN_DATA?>* <?for-each-group@cell:current-group();COLUMN_ORDER?> COLUMN_DATAEC
    I do not under stand the user's guide. What should be placed where to accomplish the dynamic column width and keep my current cell group?
    thank you for your time.

    In the Discoverer Plus (web version but not vieweer), go to Sheet -> Format. For each column click on Format Data and make sure Word Wrap in unchecked. Then click on Format Heading and check on Word Wrap. This will word wrap the column heading but stretch the column to maximum length of the data in the column.
    I think be default word wrap in unchecked unless otherwise specified when the workbook was created.

  • Splitting digest messages

    Hi all,
    since there seems to be no answer to questions on how to split digest messages into individual messages (I tried to answer this question but couldn't do so since answers are no longer allowed to the post...), I thought I'd share a little AppleScript I wrote to achieve this. The reason for the script is that people like to subscribe to mailing lists in digest format to keep their messages to a reasonable amount but you can't really answer to individual messages like that (and messages with subjects like "Re: Digest…" are not that helpful on a mailing list). The script will extract all messages from digest messages so that you can properly answer individual messages even when being subscribed to a digest.
    The script currently supports messages in the digest formats defined by RFC1153 and RFC 2046 and works on the currently selected message(s) in Mail.
    http://homepage.mac.com/aamann/Misc_Scripts.html
    Andreas

    Hi Kumar !
    Yes. You should set the "Recordsets per Message" parameter of the File adapter SENDER. It should be the amount of recordsets you want XI to put per XML message. If your source file has 80mb and that is for example aprox. 1.000.000 recordsets/records, then you should do the math to set the amount of recordsets to match aprox. 20mb (aprox. 250.000 recordsets will be about 20mb!!!).
    To use this feature, you must activate the file content conversion in message protocol of the comm channel settings. Also set "Recordset Structure" as "your_recordset_name, 1". Create a data type/message type according to your recordset structure. You also can process the file as raw, that is, all record data, as only one big field.
    check this:
    /people/sravya.talanki2/blog/2005/11/29/night-mare-processing-huge-files-in-sap-xi
    Regards,
    Matias.
    PS: please award points if helpful!
    Message was edited by:
            Matias Denker

  • Splitting of messages

    Hi
    I have a 80MB file and want to split that into 4 files (20MB each). Is it possible to split the message using file-xi-file scenario ?? I mean 4 files to be printed in target folder.
    Regards
    Kumar

    Hi Kumar !
    Yes. You should set the "Recordsets per Message" parameter of the File adapter SENDER. It should be the amount of recordsets you want XI to put per XML message. If your source file has 80mb and that is for example aprox. 1.000.000 recordsets/records, then you should do the math to set the amount of recordsets to match aprox. 20mb (aprox. 250.000 recordsets will be about 20mb!!!).
    To use this feature, you must activate the file content conversion in message protocol of the comm channel settings. Also set "Recordset Structure" as "your_recordset_name, 1". Create a data type/message type according to your recordset structure. You also can process the file as raw, that is, all record data, as only one big field.
    check this:
    /people/sravya.talanki2/blog/2005/11/29/night-mare-processing-huge-files-in-sap-xi
    Regards,
    Matias.
    PS: please award points if helpful!
    Message was edited by:
            Matias Denker

  • Dynamic link error message again?

    Hi
    I am running Bridge CS6, somethimes with photoshop CS6.
    I am running mac OSX.6.8 (snow leopard).
    mac book pro
    I am getting the dynamic link error message again after not having the problem since CS6beta. It sometimes is only with mov or other movie files but sometimes it is with all.  It is also very slow and sluggish in general.
    When I click on a video files Bridge spins the wheel for a whlie and then gives me the below error message
    (in case the screen shot does not load)
    The error message reads
    "dynamiclinkserver has encountered an error"
    and then it reads off a file thread. and then I must click to continue
    I click to contiue. the message comes back. I click once more and the file then presents. I click to play the vid. the error message again comes back. And I must repeat the clicking twice. I have reset the preferences and purged the cashe. I have installed the patch I found in the forum too. thanks for any help you can render, Uhane

    Yes I did that while talking to tech support on the phone. They had given up and refered me to an upper tech support staff who was supposed to call me back but never did. Where is a link to this udate? It did not show up when I ran the updater.?!  As for permission listed as a culprit on the other thread you link to I have no such firewall or other software running. All the permissions have been set to my admin accnt which is the one and only accnt on this machine. I had NO problem since the beta version and then all of sudden it started again with the dynamic link fail with somoe files types in the last day or so. As for the other problems ... I honestly don't have a clue but assume they are all related to a single cause as they all showed up at the same time. I will reset once more. All start up scripts are checked. always have been. Can you tell me more about this update?? Is there a link? I will go fish...thanks for your help

Maybe you are looking for

  • 2 dvrs or single multi room dvr???

    i currently have one DVR set up for multi room $19.99 and one standardt STB $4.99.    My wife tapes tons of standard programs and watches them all in the bedroom on the STB (non HD TV there).   This of course limits what i can watch on the good HD DV

  • Cisco ise upgrading and licences

    I nedd to upgrade from version 1.1.2 patch 4 to 1.1.3 the deployment is distributed so the split deployment technique needs to be used: http://www.cisco.com/en/US/docs/security/ise/1.1.1/upgrade_guide/upg_dis_dep.html#wp1052969 the guide is quite har

  • Error code: 0xc0000098

    Hi, I am trying to install Windows 7 via PXE Boot but I am having problems. I have Configuration Manager 2012 R2 installed on Windows Server 2012 R2 with SQL Standard 2012 When I press F12 to PXE boot the test laptop I am receiving the following erro

  • DBAdapter output XML special charachters

    Hi I am calling a stored proc in OSB via a DBAdapter. The output is in the XML form. There is an issue I am facing . Not sure if it is a bug in DBAdapter or some configuration issue at my end. Assume one of my column output is Tom & Jerry then the XM

  • MultipartRequest error

    Hi, Can anyone please help me. I am having an error using MultipartRequest class by oreilly. I am trying to checkin a file and it worked well when i was using it on my local machine running LiteWebServer. But not i have transferred my code into WebSp