Collect messages in BPM

Hi experts,
Need to create one scenario to collect payload of XML files, I have done this work in Design and Configuration :
data types : test_collect
Message Types : test_collect
Message Interfaces :  Test_collect_1 (abs asy),  Test_collect_2 (abs asy)
I need to collect Test_collect_1 and pass it to Test_collect_2
Message Mapping : Test_collect_1 - Test_collect_1
Interface Mapping :  Test_colect_1 - Test_collect_2
Integration Process is created as example in Standard Process in SAP BASIS
--> http://sap.com/xi/XI/System/Patters --> BpmPatternCollectPayload
Need to created more mappings or not.
How I will created proper Configuration Steps,
mean no. of Sender Agreements, receiver agreements, Receiver Determinations and Interface Determinations etc.
Regards,
Study SAP

hi study sap,
check the below blogs to have a cleat understanding
Check these
BPM:
Walkthrough with BPM - Walk through BPM
BPM in XI https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/integrationProcess%28ccBPM%29inXI&
BPM-1 Walkthrough with BPM
BPM-2 Reconciliation of Messages in BPM
BPM-3 RFC Scenario using BPM --Starter Kit
BPM-4 The specified item was not found.
Schedule BPM Schedule Your BPM
Use of Synch - Asynch bridge in ccBPM Demonstrating Use of Synchronous-Asynchronous Bridge to Integrate Synchronous and Asynchronous systems using ccBPM in SAP Xi
Use of Synch - Asynch bridge in ccBPM https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
without BPM Sync/Async scenarios without BPM
without BPM1 Sync/Async communication in JMS adapter without BPM (SP19)
IDOC BPM IDOCs (Multiple Types) Collection in BPM
multimapping without BPM /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible---- Multi Map With out BPM
Various multi-mappings and Optimizing their Implementation in Integration Processes (BPM) in XI. Various multi-mappings and
Optimizing their Implementation in Integration Processes (BPM) in XI.
Illustration of Multi-Mapping and Message Split using BPM in SAP Exchange Infrastructure --- Illustration of Multi-Mapping
and Message Split using BPM in SAP Exchange Infrastructure
IDOCs (Multiple Types) Collection in BPM (N:1 Mapping )
regards
kummari

Similar Messages

  • Collect Messages using BPM

    Hi all,
            Am doing a collect message pattern using BPM. After collecting messages wen mapping is called its throwing exception. CAn you help me out in this. I ll explain.
    the input i give is :
    <Root>
           <Name> asd </name>
           <ID> A </ID>
    </Root>
    i sent thid message 5 times to BPM (using collect pattern).
    the stop message is of the format
    <Stop>
       <ID> A</ID>
    </Stop>
    wen i send this the collect block is exited and the flow comes  to a transformation step which does a n:1 mapping
    ie. in my mapping i add the source message type and changed its occurence to unbounded in messages Similarly in IM also i changed the occurence of source MI to unbounded. wen i test the message mapping with this
    <Root>
           <Name> asd </name>
           <ID> A </ID>
    </Root>
    as input it gives the exception. But if i gve like this ten its showing successful.
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
       <ns0:Message1>
    <Root>
           <Name> asd </name>
           <ID> A </ID>
    </Root>
    </ns0:Message1>
    </ns0:Messages>
    But how can wedo that as transforamtion happens in BPM. PLease help me out in this

    Hi,
    Check these links
    /people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm
    /people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/76/5d373f5e550456e10000000a114084/frameset.htm
    Regards,
    Kumar

  • Xpath in the collect message of BPM

    Hi,
    I created a BPM collect message. My source message has a field which is in the format of XXXX-NN such that XXXX can be any 4 letters and NN is a number 01 - 99. In the loop of the BPM, I made use of an Xpath command in the condition editor for the loop condition. The command is /header/segment1/segment2[(substring(field1,6,2))] for the left hand operand and comparing it as not equal to a counter variable.
    When I look at my graphical workflow log, there is an error in the Transformation step. In SXMB_MONI, I have a red flag with an error of "Message has error status on outbd. side" in the process view of SXMB_MONI.
    If I change the Xpath command to /header/segment1/segment2/field1 and change the value of my field to just use NN without changing anything else, my BPM is working properly. Is there something wrong with the added Xpath command? I followed the blog in /people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination but I wonder if this only works for Receiver Determination. Please help.
    Regards,
    Elbert

    Hi Elbert,
    the expression
    means a condition and requires a
    =
    For example:
    [//person/name[../no='123'] code]
    means: select element person/name where person/no "123" is.
    Because of unclear results regarding the namespace i wouldnt put the full path. Use for example [code]substring(//segment2/field,6,2)
    The substring expression is ok, i m shure.
    <b>substring(X-Path on String value, No of letter in string, length of searched substring)</b>
    If the string is not long enough, it might give you strange errors, he, he. Cant cut 1m of 20 cm salami.
    Regards,
    Udo

  • Collect Messages with BPM

    Hi everybody,
    I need to know if it is possible to develop a integration process to collect messages without using correlation, until now I only developed that scenarios using correlation, but I have a special case that is not necessary identify a key to make a relation among the messages
    Thanks in advance.
    Ivan
    Edited by: Jose Iván Reyes Arteaga on Dec 3, 2008 10:42 PM

    If you do not need any key field for correlation, then you can go for dummy correlation in BPM.
    In the expression editor (properties column of the Correlation editor), select the "Constant" radio button and give some dummy name.
    For more explanation, refer Siva Maranani's post in the thread:
    /message/426236#426236 [original link is broken]
    Thanks,
    Geetha

  • Collecting Messages in BPM

    I am trying to recreate and understand the BPMPatternCollectPayload. What I don't understand is We have a interface mapping in which we tryiing to append all the message into one inetrafce. so we create a one to one mapping between both the interface. The only difference is one is o to unbounded and the other one is just 1. Now how do I change the occurance in the interface mapping or in the message mapping given that both have the same data type. Please help.

    in teh message mapping
    under Messages tab u change the occurance to 0..unbounded
    similarly in interface mapping under Design tab where u select the Message interface u change the occurance to 0...unboundd

  • BPM collect message

    Hi All,
    I am doing a scenario for collecting messages using BPM, the objective was i need to collect the input messages and to be stored, when the message reaches 10, then it should deliver all these 10 messages to the target.
    for this, i have designed bpm with the
    1. Receiver Step
    2. Container Operation
    3. Transformation and Send.
    but i am getting the following error while activating
    Exptession must not return an multiline value
    Expression must return the interface type MI_OUT_A
    Expression must return the interface type MI_IN_A
    Container element var1 in step Receive1 is initialized but is not used.
    Here var1 is the abstract interface
    the datatype& message type  was DT_A and MT_A and the interfaces are MI_OUT_A and MI_IN_A.
    could anyone clarify regarding this issue..
    regards,
    Sai

    Hi,
    Check some links on BPM.
    /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    /people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit
    /people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
    /people/michal.krawczyk2/blog/2005/09/04/xi-do-you-realy-enjoy-clicking-and-waiting-while-tracing-bpm-steps
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/daea5871-0701-0010-12aa-c3a0c6d54e02
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/e8515171-0701-0010-be98-e37bec4706cc
    Regards,
    Phani
    Reward points if Helpful

  • Collecting messages in XI

    Hi,
    I would like to send a packet of iDocs from the R/3 to a legacy system using the XI. What should I do in order to perform this ?
    Can I see an example somewhere ?
      Thanks, Nir.

    Hi Nir,
    In Software Component "SAP Basis 640" there is an example to Collect Messages with BPM.
    Namespace: http://sap.com/xi/XI/System/Patterns
    Integration Process: BPMPatternCollectMessage
    Regards,
    Robin

  • BPm collect Message Check

    Hi,
    when i perform a check to standard BPM patterns BpmPatternCollectMessage. I get the following info am i wrong some where do any changes needed to be done.
    Container element stopmessage in step receive terminating message is initialized but not used
    Container element collectmessage in step *receive * message is initialized but not used...
    kindly help

    I did the above scenario as told.
    It is a bpm message dependent scenario. It keeps collecting messages till a particular message is received.
    I more or less used the message dependent pattern given in SAP BASIS.
    The data types are as follows.
    Dt_In
         Name
         OverallID
    Dt_In
         Name
        OverallID
    1 to 1 mapping
    I used the OverallId for correlation. The receive step inside the infinte loop collects the messages with OverallID '1' while the receive step below collects messages with OverallId '2'.
    In the container elements i defined 2 separate message interfaces. One for OverallID '1' and the other for OverallID '2.  The 2 message interfaces have the same Message type. Only values will be different.
    For the parallel fork step i have given end condition OverallID = 2.
    When i execute the scenario the messages are all comingin a queue. The status is wait for event.
    What could be the problem?
    Thanks
    Edited by: pratichi chauhan on Sep 24, 2008 2:46 PM

  • Collection of messages in BPM

    Hi Experts,
    Collection of messages in BPM is not working,IP is executing for each Idoc.Actually i have done the sceanrio Idoc to File,Here I am getting multiple IDocs of same type from R3 when run a transaction and i would be generate a single file for all the IDocs.For this i have changed the occurence of Idoc from 1..1 to 1..unbounded and done the mapping betweeen these two. i have done bpm just like as standarad bpm pattern "BpmPatternCollectTime".I mentioned the time as 1 minute.in transformation step i had mentioned interface mapping for 1..1 Idoc to 1..unbounded Idoc and the real mapping conditions of this sceanrio is carried out after the bpm. The Idoc's are generating from R3 with the time diffrence of 3 secs.So it should generating a single file what ever the no.of idocs populating within a minute.
    In monitoring it showning for bpm, its trigerring for each incoming Idoc and procesing successfully.
    For Ex: Two idocs are coming from R3 then BPM triggers twice
    What could be the possible reasons for this or i have done any thing wrong.
    Any ideas.., Thanks in advance
    Cheers
    Tiger Woods.

    HI,
    Try to Use Idoc packaging. also see the below links
    /people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm - Collection of IDoc to Single File
    /people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm - collecting IDocs without BPM
    /people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters - IDoc to File
    Regards
    Chilla

  • BPM Collect Message dependent AND time dependent

    Hi
    I have a IDOC to file scenario where I have to collect all the IDOC until I receive a stop IDOC.
    Once the End collect IDOC is received I have to do a n:1 transformation and write the file to the FTP.
    The problem is, at times the IDOC which is suppose to end the collect loop gets stuck in ECC R3 system.
    So Im wondering If I can do something like say, we have two options inside BPM both time dependent and message dependent.
    In this case which ever comes first (the Stop/END IDOC or the Time say 3 mins) will end the collect process.
    Can anyone pls suggest will it work and if so what are the additional steps I have to introduce in the BPM.
    Pls advice.
    Right Now these are the steps in the BPM Collect Message dependent.
    1. Block (I have used correlation)
    2. Fork inside the block
    3. Fork branch one has a look with end condition as 1=1; then a receive step and a container operation inside the loop.
    4. Fork branch two receives the end collect idoc.
    5. Transform step outside the block.
    6. Send step.
    Thanks
    Prasanna

    Hi Abhishek/ Raj
    Thanks!!
    I have done the changes let me confirm after testing it once. In the mean time I have one more question regarding the same BPM, as I have mentioned in the first post, the BPM contains the 6 steps mentioned but the the 6th step is inside another block (Block2).
    The steps 1 to 4 are inside Block1.
    The step 5 ie the transformation step (n:1) is in between the Blocks ie not inside any block (hope im not confusing).
    The second block is for sending the file to the FTP and based on the acknowledgement (transport level) I have to send an email.
    So Block2 already contains a deadline branch, it is to wait for the positive acknowledgement for say 3 mins and send the error email if incase we dont get positive ack within the time limit.
    My doubt is,
    1. Is it the only way (having two block and two wait steps) to achieve this.
        (one block for collecting and one block for ack)
    2. Is there any way I can have a single Block in the BPM insted of two. If so what are the steps.
        Having single block, Will improve anything??
    Thanks
    Prasanna

  • Time dependant message collecting in a bpm

    I have a bpm setup to collect messages. I want to collect messages until a specific time daily (eg. 18h00 everyday) and then send them.
    I have used the BpmPatternCollectTime pattern but cannot specify a daily time. Does anyone have suggestions on how to accomplish this.
    Ta.
    Rodney

    Hi Rodney,
             We also had this same design implemented. But the BPM is not flexible enough to provide the get the current date and collect till a particular time.
    One another way will be to use the design BpmPatternCollectMessage and send in a stop proxy message using a ABAP proxy message triggered from the ABAP stack at 18:00hrs every day so that the collection process will end and will send the data to the target system.
    Cheers
    JK
    PS: Award points if this helps you

  • BPM collects messages, and should terminate at a given time

    Hi,
    i'm trying to create a scenario where a business process collects messages. At a certain time each day this process must transform this messages into one message and terminate.
    (I used the BpmPatternCollectTime process as a template)
    My problem is:
    how to tell the deadline branch it should rais an exception every day at a given time, lets say 10pm?
    I already tried to configure this branch with "Reference Date/Time=Expression" and set date and time to 2008-10-04 14:30:00. But the process won't stop at this time.
    Any ideas?
    Thanks in advance,
    ms

    Hi,
    I am not sure if you could use this pattern for stopping at a given time?
    Maybe you could configure a report that sends a message every day at the given time to the PI and your process stops with receiving this message.
    Regards
    Patrick

  • Collect message till particular point of Time in BPM

    Hi,
    I want to collect messages till particular point in time like till 6 oclock evening.
    In deadline branch i have to use Expression and should give date and time.
    What is the format of date and time if it is not coming in payload.
    What is the difference between: Creating the step and Creating the process property.
    Any help is apreciated.
    Thanks and regards,
    Satish

    The date and time format will be the standard XSD date and time format
    Date:
    YYYY-MM-DD  or YYYY-MM-DDZ
    Time:
    HH:MM:SS or HH:MM:SS.x
    But since your requirement is to collect the messages till 6pm everyday, I guess there is a problem with the mandatory date field.
    Maybe you can use a datatype which holds the current time in a field and use the field as the loop variable.
    - Kannan

  • Stateful messages in BPM(Urgent)

    hi,
    BPM is used for handelling stateful messages.But what is the maximum no. of messages it can handle,without reducing the performance.

    Hi,
    Business Process Management provides SAP Exchange Infrastructure with functions for stateful message processing: The status of an integration process is persisted on the Integration Server. This means that you can specify how long an integration process must wait for further messages to arrive, for example. Furthermore, this enables you to process messages within an integration process further still; for example, you can collect certain messages and then send them in a particular order.
    For Performance fine tunning avaoid having message mapping inside BPM,do it either before the BPM or after BPM
    BPM is used for Stateful communications,suppose u have to delay message processing,or wait for other messages to arrive and then semd them all together,in that case use BPM.
    go thru this: https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3bf550d4-0201-0010-b2ae-8569d193124e
    Performance is not only depend on the usage of BPM, it also depends on the message volume inside the BPM. So it depends on the memory size, message size i.e payload size , design , mapping used etc
    This basically means SAP XI as a EAI tool without the BPM provides stateless message. this means that one message coming in SAP is not dependtent on another message.
    BPM in SAP XI is used to make messages stateful and this allows us to do functionalities like collecting message , splitting message, waiting for a message etc.

  • Splitting and Collecting Messages

    Hi,
    I have a scenario in which I get a message from SAP. In this message their are multiple item structures and 1 header structure. Now I have to sent these items to a WS seperately and collect the messages  from the WS response in one message with a header.
    Something like:
    Receive Message -> split message (message mapping) -> send all to WS / receive response for everyone -> collect messages from response in a new message -> send the new message to another WS
    How can I do this in BPM?

    Hi Chris,
    Your design should be like this:
    Start --> Receive --> Transform1 (Do the split and multimapping) -->  Send Step1 (Synchronous) --> Send 2 (Send Response from send1 to the output) --> Stop.
    Regards,
    ---Satish

Maybe you are looking for