Split source message into multiple target messages

Hi Experts,
I have a scenario where a source message needs to be split up into multiple messages for the corresponding target systems.
One source system and three target systems.
Source system is a .Net application
Target systems - SAP R/3, Two webservices on different application systems
Can i implement the scenario above using BPM in the following manner?
Source->WS Adapter->PI-->RFC Adapter->SAP R/3
Source->WS Adapter->PI-->WS Adapter->Target 2
Source->WS Adapter->PI-->WS Adapter->Target 3
I could have a webservice at the source which would be called by the .Net Application
Webservice request would be passed to an integration process which would split the message for the three target systems specified.
Correct me if am wrong.
Also please get back to me if you need more inputs
Regards,
Kalyan

Hi,
      You can implement the same with out using the BPM itself...
you can use either of the below options
1. if target messages are optional like based on certain conditions if you need to route the message to the particular targets
then you can use multimappings for the same which generates the mappings based on the condition for the particular target.
2. if each incoming message needs to be routed to the three receivers each time then configure the three receivers at the receiver determinations one for each target...
3. if you are using the same business system for all the three receivers then create the three interface mappings and configure the same at the interface determination level so that for each message three target messages will be generated and send to target...
HTH
Rajesh

Similar Messages

  • Multiple target messages

    Hello,
    for our business process, we need to map a single source message to multiple target messages (of different message types).
    The (ABAP)mapping takes care of this mapping, so I put a transformation step after my receiver step, that invokes this mapping.
    What do I have to define after the transformation step: do I use a fork or a send-for-each-block or ... ? Since we're on SP15, can we use the "extended" option in the interface determination to facilitate our process ?
    Thanks for your answers !
    Kind regards,
    Frederik

    Hi,
    What is the SP that you are using. If it is XI 3.0 and SP less than 14 then it is not possible. You need to use Abstract interface.
    And why do you need Multimapping in the first place. You can do a simple mapping and in the receiver determination you can add more Business Server/System. Each Service/System you will have seprate IB interface and a separate Interface mapping.
    Hope this solves your problem.
    Thanks,
    Prakash

  • Splitting a message into multiple messages.

    All,
    I will simplify the issue we have and explain.
    We have the following structure. (the occurence <data> node is unbounded)
    <source>
    <data>...</data>
    <data>...</data>
    <data>...</data>
    </source>
    we need to split this into another message <source2> with the exact same structure... but we need only 10 <data> nodes in the <source2>. In this <source2> the <data> node is of max occurs 10.
    so if we get a <source> message with 1000 <data> nodes comes in, we need to split it into 100 <source2> messages.
    How can we do this? (due to constraints we cannot use the file content conversion)
    Thanks.

    Hello,
    Please check whether the below logic suits your scenario.
    Change Messages - http://flickr.com/photo_zoom.gne?id=1064675286&size=o
    Mapping -http://flickr.com/photo_zoom.gne?id=1064675070&size=o
    Mapping -http://flickr.com/photo_zoom.gne?id=1064675164&size=o
    UDF's- http://flickr.com/photo_zoom.gne?id=1064675480&size=o
    Results http://flickr.com/photo_zoom.gne?id=1064675320&size=o (Source 4 Data)
    Results http://flickr.com/photo_zoom.gne?id=1064675430&size=o (Source 5 Data)
    The above example will split source data into 2 messages each.
    If it doesn't helps, let me know.
    Best regards,
    raj.

  • Split the IDOC into multiple IDOC if the IDOC has more than 500 records

    Hi All,
    I developed an outbound IDOC in which we are facing an issue.
    There is some limitation on the maximum idoc size it can handle.
    If number of records is more than 500, split the idoc into multiple iDoc's, e.g. if it would have 1300 records , the result would be 2 iDoc's with 500 records, and the last one would have 300 records
    How can i acheive this.
    Regards
    Jai

    Hi,
    1) first you need to know which message type/Idoc type you are triggering.
    2) Get the Corresponding processcode from Partner profiles(WE20/ WE41).
    3) Then the look for prper user-exit in the related processing FM.
    4) write logic to split the IDoc accordingly.
    if no proper user exit available then copy the standard processing FM and need to all ALE related configurations.
    Catch hold any ABAP expert in your team to do all these.
    Suresh

  • Split Single IDOC into Multiple IDOC's Based on Segment Type

    Hi Experts,
    I have a scenario IDOC to FILE ,  Split Single IDOC into Multiple IDOC's based on Segment Type
    Outbound:
    ZIdocName
    Control Record
    Data Record
    Segment 1
    Segment 2
    Segment 3
    Status Record
    I should get output like below
    Inbound:
    ZIdocName
    Control Record
    Data Record
    Segment 1
    Status Record
    ZIdocName
    Control Record
    Data Record
    Segment 2
    Status Record
    ZIdocName
    Control Record
    Data Record
    Segment 3
    Status Record
    Please suggest me step by step process to achieve this task.
    Thanks.

    Thanks a lot Harish for reply.
    I have small doubt. According to your reply , If we have N number of segments in single IDOC with same fields in all segments then for splitting Single IDOC into Multiple IDOC's based on Segment Type we need to duplicate N number of target IDOC tree structure.
    Is that possible to Split single IDOC into Multiple IDOC's based on Segment Type using only one Target IDOC structure without duplicating the Target IDOC structure tree.

  • Split a record into multiple records

    Hi,
    I have situation where i need to split a record into multiple records.
    InputData :
    value|BeginDate |EndDate
    15 |2002/10/15|2002/10/16
    13 |2002/10/13|2002/10/20
    19 |2002/10/19|2002/10/23
    10 |2002/10/10|2002/10/12
    OutPut :
    10 |2002/10/10|2002/10/12
    13 |2002/10/13|2002/10/15
    15 |2002/10/15|2002/10/16
    13 |2002/10/16|2002/10/19
    19 |2002/10/19|2002/10/23
    Thanks

    Hi ,
    As a far I understood from your example ,
    I have few questions...
    1. You have information about the patient in a 1 source table.
    2. how u are identifying for patient X u need 5 rows to be created. R u storing these informations in seprate table or how ...
    3. if you have these information in a seperate tables ..... a simple cross join in ODI should get you the expected result.....
    Or give some more information with a example ..that would be great ...
    Thanks

  • Split one row into multiple columns

    Hi,
    Data in one CLOB column in a table storing with delimiter, ##~~##. Ex. ##~~##abc##~~##defgh##~~##ijklm##~~##nopqr (data starts with delimiter). Please help me to split the data into multiple rows like below and it should be in the same order.
    abc
    defgh
    ijklm
    nopqr
    I am using Oracle 11g.
    Thanks.

    Thanks Hoek for your response. Before posting my question in the forum, I tried similar query. It is working with one character as delimiter.
    with test as (select 'ABC,DEF,GHI,JKL,MNO' str from dual )
    select regexp_substr (str, '[^,]+', 1, rownum) split
    from test
    connect by level <= length (regexp_replace (str, '[^,]+')) + 1;
    Above query is giving correct result by fetching 5 rows. I have modified the query like below...
    with test as (select 'ABC,,,DEF,,,GHI,,,JKL,,,MNO' str from dual )
    select regexp_substr (str, '[^,,,]+', 1, rownum) split
    from test
    connect by level <= length (regexp_replace (str, '[^,,,]+')) + 1;
    Above query resulting 13 rows and last 8 rows are nulls. Number of null rows are increasing, if I increase number of characters in delimiter. Could you please tell me how to avoid those null rows.
    Thanks.

  • Split single row into multiple rows containing time periods

    Hi,
    I have a table with rows like this:
    id, intime, outtime
    1, 2010-01-01 00:10, 2010-01-3 20:00
    I would like to split this row into multiple rows, 1 for each 24hr period in the record.
    i.e. The above should translate into:
    id, starttime, endtime, period
    1, 2010-01-01 00:10, 2010-01-02 00:10, 1
    1, 2010-01-02 00:10, 2010-01-03 00:10, 2
    1, 2010-01-03 00:10, 2010-01-03 20:00, 3
    The first starttime should be the intime and the last endtime should be the outtime.
    Is there a way to do this without hard-coding the 24hr periods?
    Thanks,
    Dan Scott
    http://danieljamesscott.org

    Thanks for all the feedback, Dan.
    It appears that the respective solutions provided will give you: a) different resultsets and b) different performance.
    Regarding your 'truly desired resultset' you haven't answered all questions from my previous post (there are differences in the provided examples), but anyway:
    I found that using CEIL or ROUND makes quite a difference, using my 'simple 3 record testset' (30 records vs. 66 records got initially returned, that's less than half of the original). That's quite a difference. However, I must call it a day (since it's almost midnight) for now, so there's room for more optimizement and I haven't thoroughly tested.
    But this might hopefully make a difference performancewise when compared to my previous 'dreaded example':
    SQL> drop table t;
    Table dropped.
    SQL> create table  t as
      2  select 1 id, to_date('2010-01-01 00:10', 'yyyy-mm-dd hh24:mi') intime, to_date('2010-01-03 20:00', 'yyyy-mm-dd hh24:mi') outtime from dual union all
      3  select 2 id, to_date('2010-02-01 00:10', 'yyyy-mm-dd hh24:mi') intime, to_date('2010-02-05 20:00', 'yyyy-mm-dd hh24:mi') outtime from dual union all
      4  select 3 id, to_date('2010-03-01 00:10', 'yyyy-mm-dd hh24:mi') intime, to_date('2010-03-03 00:10', 'yyyy-mm-dd hh24:mi') outtime from dual;
    Table created.
    SQL> select id
      2  ,      max(intime)+level-1 starttime
      3  ,      case
      4           when level = to_char(max(t.outtime), 'dd')
      5           then max(t.outtime)
      6           else max(t.intime)+level
      7         end outtime
      8  ,      level period      
      9  from   t
    10  connect by level <= round(outtime-intime)
    11  group by id, level
    12  order by 1,2;
            ID STARTTIME           OUTTIME                 PERIOD
             1 01-01-2010 00:10:00 02-01-2010 00:10:00          1
             1 02-01-2010 00:10:00 03-01-2010 00:10:00          2
             1 03-01-2010 00:10:00 03-01-2010 20:00:00          3
             2 01-02-2010 00:10:00 02-02-2010 00:10:00          1
             2 02-02-2010 00:10:00 03-02-2010 00:10:00          2
             2 03-02-2010 00:10:00 04-02-2010 00:10:00          3
             2 04-02-2010 00:10:00 05-02-2010 00:10:00          4
             2 05-02-2010 00:10:00 05-02-2010 20:00:00          5
             3 01-03-2010 00:10:00 02-03-2010 00:10:00          1
             3 02-03-2010 00:10:00 03-03-2010 00:10:00          2
    10 rows selected.
    SQL> By the way: I'm assuming you're on 10g, is that correct?
    Can you give us some information regarding the indexes present on your table?

  • Message mapping - Map 2 source contexts into one target context

    Hi,
    I have an issue as follows:
    Source context 1 (defined as 1.....unbounded)
    Source context 2 (defined as 1.....unbounded)
    Target context 1 (defined as 1.....unbounded)
    I need to map both source contexts into the single target contexts.
    For example....
    Source context 1 has 3 entries
    Source context 2 has 2 entries
    Target context would have 5 entries in total (Source context 1 and Source context 2)
    I have only limited knowledge of working with multiple contexts so need a bit of advice.
    Can someone provide an easy way to do this ? I'm sure there is.
    Cheers
    Colin.

    The answer is quite simple.
    Right-click on the target node in the mapping editor and select the option "duplicate subtree".
    You will then have two destination nodes.
    Now you can map source1 to target1 and source2 to target2

  • Problem in work flow of PE while mapping 2 source structure into 1 target

    We have scenario in BPM where in we have to mapp 2 source structure's into target.
    To be more specific one structure occurance is 0 to unbounded and other one is of single occurance.
    We have done the mapping with target structure and tested it manually in mapping . its working fine..
    While testing it in Configuration scenario, In the workflow process i.e PE process flow, we were not able to get one of the source message structure as the input Message. Instead of two source messages, it is seen only one. Please guide us in this issue.

    actually we are receiving only one message, henece we do not need a correleation. But once we receive this message we are splitting into multiple messages in the transformation step. and we use these split messages in different transformation steps. but in one of the transformation steps we are unable see one of the split messages in the transformation step(though we have used the proper container element.). Please let me know if any ideas on this.

  • Split XSLT Output into Multiple Files

    I have an XML-to-File scenario working, but now I need to split my XSLT map output into multiple files based on the data.  I have been reading the Jin Shin blog on message splitting, but don't know that it pertains to my situation.
    XML data getting mapped with XSLT map creates output formatted like this.
    <?xml version="1.0" encoding="utf-8"?>
    <ns1:ColdInvoiceData xmlns:ns1="http://graybar.com/cold/invoice">
    <Header>
      <RecordID>HDR</RecordID>
      <InvoiceNumber>15</InvoiceNumber>
    </Header>
    <Details>
      <RecordID>DTL</RecordID>
      <LineItemNumber>001</LineItemNumber>
      <UnitPrice>1.25</UnitPrice>
    </Details>
    <Details>
      <RecordID>DTL</RecordID>
      <LineItemNumber>002</LineItemNumber>
      <UnitPrice>2.22</UnitPrice>
    </Details>
    <Header>
      <RecordID>HDR</RecordID>
      <InvoiceNumber>16</InvoiceNumber>
    </Header>
    <Details>
      <RecordID>DTL</RecordID>
      <LineItemNumber>001</LineItemNumber>
      <UnitPrice>3.33</UnitPrice>
    </Details>
    </ns1:ColdInvoiceData>
    I currently have this output writing to a file (FTP, File Conversion).  A single file is no issue, but I need to send multiple files for every set of HDR/DTL(s).  I also need to put the invoice number in the filename (which is working fine as a parameter in my single FTP File CC now).
    Can I make this happen with message splitting and maybe a second map (GUI map)?  Do I need to adjust the XSLT output XML format to have an invoice level?  Is there a better way to go?
    Thanks!

    I made a change to the namespace used on the Messages/Message1 nodes (since the system-assigned ns0 was already being used in my xml data) and now I am getting output. 
    The problem is that the output matches my input.  As aforementioned, I started with just a one-to-one mapping on every node and field. 
    When I change the mapping to try to force multiple ColdInvoiceData nodes, I get the following error (when my source has two Invoice nodes):
    <Trace level="1" type="T">com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns0:Messages/ns0:Message1/ns1:ColdInvoiceData[2]/Invoice. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at
    When my source has one invoice node, it works ok.
    Here is a screenshot of my mapping structure.
    http://webpages.charter.net/kpwendel2/ib.jpg

  • Single source to create multiple target nodes

    Hi Guys,
    I need to create multiple target node as many occurrence of source node. how should i achieve it?
    Source node (1...999999)  to Target node(1..1)
    please suggest.
    Regards
    Swapnil

    Hi Nutan,
    Sorry formatting got messed up so posting again.
    Sorry for the confusion. Target structure is 0..unbounded.
    Source structure ...................................... Target structure
    Message 1 ...................................................Message 1
    ZHRMD_A07 (1...1)..........................................MT_EMPLOYEE (0....unbounded)
         E1PLOG1(1...unbounded)................................ Field1
                                                                                    I need to create MT_EMPLOYEE multiple times depend upon occurences of E1PLOG1.
    Regards
    Swapnil
    Edited by: Swapnil Bhalerao on Mar 3, 2010 12:41 PM
    Edited by: Swapnil Bhalerao on Mar 3, 2010 12:47 PM

  • Split a record into multiple records (rows)

    I am using ODI to move data from source system to target system .Both are Oracle . In the source system I have a record which I need to split into multiple records or rows in the target system based on some rules . How can I achieve this in ODI . Please explain

    Hi ,
    As a far I understood from your example ,
    I have few questions...
    1. You have information about the patient in a 1 source table.
    2. how u are identifying for patient X u need 5 rows to be created. R u storing these informations in seprate table or how ...
    3. if you have these information in a seperate tables ..... a simple cross join in ODI should get you the expected result.....
    Or give some more information with a example ..that would be great ...
    Thanks

  • Splitting single video into multiple files - workflow improvements?

    I regularly need to split a single video into multiple separate files that are used by other programs.  I'm using Premiere Pro CS4 for a number of reasons including the ability to easily and accurately select a scene by individual frames, native audio and video effects/filters, and the ability to import and export various video types.  I'm open to using other tools, but I haven't yet found one that is even close to Premiere Pro when it comes to accurately selecting split points.
    I'm not a Premiere Pro expert.  I have been doing this for about four months and have read many resources (books, forum posts, help guides) to refine the workflow I'm currently using.  My question:  does anyone know any improvements that might save me time/keystrokes.
    Current workflow:
    I've bound F8 to File > Export > Media
    Import video file
    Open in source monitor
    Set In and Out points for scene in source monitor
    Ctrl-drag from source monitor to Project Panel (creates a subclip)
    Repeat 3 and 4 for all scenes/subclips
    Select all subclips from Project Panel and drag to timeline
    Set work area bar to first subclip in timeline by the following four keystrokes:  Home, Alt-[, PageDown, Alt-]
    Type F8 (File > Export > Media shortcut).  Type output file name, click OK and the first subclip is put in the AME queue
    For the remaining subclips, type: Alt-[, PageDown, Alt-], F8, output file name, OK and repeat until done
    Any thoughts/ideas on workflow improvements?
    Thank you!

    Thank you Hunt.
    For the sake of brevity, I didn't include all of the details about the various aspects of the projects.
    Early on I was doing what you suggested and yes, it is a little quicker.  I learned (painfully) a couple of months later that I sometimes have to go back and adjust the clips and this method (trim to timeline with no subclips) resulted in quite a bit of duplicate effort (to reobtain start/stop points).  I've since learned that managing the "scenes" as subclips in topical bins allows me to go back and make adjustments, long after I've totally forgotten about the project content, without a lot of unnecessary reworking.

  • How to convert javascript alert message into an Inline message in Apex Page

    Hi All. Im new to Apex.
    Present Approach -
    I have a dynamic report region developed using API's like APEX_ITEM etc. I am using java scripts to validate these dynamic items and popup alert messages as shown below -
    function ValidateNotObservedCB(p_row_num)
    var v_row_num = p_row_num;
    var v_not_observed_cb_status = document.getElementById('f_notobserved_'+v_row_num).checked;
    var v_not_in_district_cb_status = document.getElementById('f_notindistrict_'+v_row_num).checked;
    var v_program_code = document.getElementById("f_program_code_"+v_row_num).value;
    if ( (v_program_code.length>0)&& ( document.getElementById('f_notobserved_'+v_row_num).checked==true ))
         bold alert("You have already entered a program code.") bold
         document.getElementById('f_notobserved_'+v_row_num).checked=false ;
         document.getElementById('f_notobserved_'+v_row_num).value='N';
    } else if ( (v_program_code.length==0)&& ( document.getElementById('f_notobserved_'+v_row_num).checked==true )) {
         document.getElementById('f_notobserved_'+v_row_num).value='Y';
         document.getElementById('f_notobserved_'+v_row_num).checked=true ;
    } else
         document.getElementById('f_notobserved_'+v_row_num).checked=false ;
         document.getElementById('f_notindistrict_'+v_row_num).checked=false;
         document.getElementById('f_notindistrict_'+v_row_num).value='N';
         document.getElementById('f_notobserved_'+v_row_num).value='N';
    Question/Issue - How can I convert these alert messages into Inline messages to show on the page, similar to what appears when we do Item Validations in APEX.
    Waiting for responses as this is an urgent requirement.
    Thanks in Advance,
    Madhu

    Hi,
    I did with jQuery small sample
    http://apex.oracle.com/pls/otn/f?p=40323:36
    Page HTML header is
    <script type="text/javascript">
    $(function(){
      var lImg = $('<img alt="" class="pb" style="float: right;" src="/i/delete.gif"/>');
      var lMesg = $('<div id="MESSAGE" style="border-top: 1px solid rgb(142, 170, 142); border-bottom: 1px solid rgb(142, 170, 142); padding: 5px; background: rgb(235, 241, 235) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; width: 450px;" class="t14notification"></div>');
      $('.pb').live('click',function(){
        $x_Remove("MESSAGE");
      $('#SUBMIT').click(function(){
        if($('#MESSAGE').length == 0){
          $('#t14Messages').children().append($(lMesg));
           $(lMesg).append($(lImg));
           $(lImg).after($('#P36_NOTIFICATION').val());
        }else{
           $('#MESSAGE').text('');
           $('#MESSAGE').append($(lImg));
           $(lImg).after($('#P36_NOTIFICATION').val());
    </script>I do not know does it help. Using this depend much on theme, defined class and IDs.
    Br, Jari

Maybe you are looking for

  • Using a subreport to list values from the data in the main report

    Post Author: GarrettFitzgerald CA Forum: Crystal Reports I have a list of new patients, showing what insurance class they fall under. I'm summarizing the classes into 4 groups using a SQL Expression.I would like to put a subreport in the header showi

  • A600 Won't Wake Up - Help!?

    I have an ideacentre a600 that I upgraded to Windows 7 Ultimate.  Randomly, the computer will just go into sleep/hibernate mode and it won't wake up.  I've tried all the usual methods to wake it up, like moving the mouse or hitting keys on the keyboa

  • Report Timeout in Portal

    Hi Friends, We have a query which runs for 5mins when we execute from Bex Analyser using Execute query on the Web, but the report times when we execute from Portal after 10mins. Any idea where the timeout settings can be changed.???? Thanks in advanc

  • BPML for FI/CO

    Hey Guys, Please send the Business Process Master List (BPML) which lists out all the sap standard menu transactions in FI & CO in hierarcy form . You could sent it to me at [email protected] Regards Bijoy

  • Desktop Icons are blank after upgrade

    Has anyone else noticed that in lion your alias links sometimes show as clear squares?  Mine has almost daily.  If you click on them and move them the blue folder is back.. Its bother some but not an issue.  If you have seen this can it be fixed? MBP