BPM collection question

Hi all,
In BPM collection scenario
Is there any way to capture all the messages ids(inside BPM) which are being sent to that BPM?
Any help will be appreciated.
Regards,
Ivá

Hello Ivan!
Yes. You might specify a WHILE or UNTIL loop inside a block of your BPM process. For example, create a FORK and then create on one path a Receiver Step waiting for a "STOP" message, and in the other fork path create an infinite WHILE step with another Receiver Step to gather the incoming messages (and appending them to a Message List container). Or you can just set a WHILE or UNTIL with a limited amount of messages, without the Fork.
Please check the Help page below for more information about this.
Workflow Builder:
http://help.sap.com/saphelp_nwpi71/helpdata/en/c5/e4b79d453d11d189430000e829fbbd/frameset.htm
Best regards,
Lucas

Similar Messages

  • 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

  • BPM Collect pattern is not coming out  and it is in loop.

    Hi Experts,
    We have implemented a BPM Collect Time pattern and it was working fine in Dev and QA environments perfectly. Couple of days back we have some server issue in Dev environment and Basis team has done some thing with File Storage. From that time, all our BPM's were not working in Dev. It is showing that the block is waiting for some event to trigger and it is in Process state.  We have set it for 5 min and block is not coming out from loop.   We exported the code to QA and it is working in QA.  We tried SWU3 transaction as given in the below forum and it didn't help us.
    bpm collect time infinite loop error
    Some one please help us.
    Thanks
    Venkat
    Edited by: Venkata Gupta on Nov 27, 2008 12:54 AM

    Hi
    Is Your BPM having deadline branch ?
    If there is any system Exception then catch it.
    http://help.sap.com/saphelp_nw04/helpdata/en/33/4a773f12f14a18e10000000a114084/content.htm.
    According to thread mentioned by you ,Schedule your Missed Deadline Branch.
    Also check your BPM using transaction SXMB_MONI_BPE and find out which step have error.

  • BPM Collect Transformation Step Raise Alert need help

    Hi,
    Scenario BPM Collect.
    Block 1 - Multiple xml messages received and collected into multiline container.
    Block 2 - Transform multiline container element into single message. Mapping Error throw Transformation Exception.
    Block 2:Exception Branch - Transform multiline container element to error multiline container element (based on BpmPatternReqRespTimeOut with a twist).
    Block 2:Exception Branch - Send multiline container element to Communication Channel for further error analysis.
    Block 2:Exception Branch - Throw Alert BPM_ALERT Transformation Failure message.
    Getting Compilation errors because I am not allowed to output a multiline container element...?
    Behaviour without the Exception Branch Transform and Send is that the first message collected in the ccBPM goes to Green Flag and the others goto chequered flag when the BPM_ALERT is thrown. This is not desirable behaviour.
    Would like to output multiple line container element so I easily know which group of messages failed ie file 1,2,3... so that I can go to the Error folder and repost them in the Sender Communication Channel if required.
    Once this is working I am trying to identify which file had the conversion problem so I can filter if out from the others and process the others attempting to pass information from a UDF as to which item in the multiline container element I reached before I had a problem int he original mapping...?
    I have read Michal Krawcyzk's blog on ALERT variables and Help on Throwing Alerts etc but I am progressing slowly with my solution...
    thanks,
    V

    Thankyou Chirag for those Blogs.
    The first is the one I have looked at most recently and the second has given me an idea.
    If I change my mapping of the multiline container element each line holds an xml message to the error element by calling a UDF to map the payload across then at least I would have output my Payload that errored? I will try it and see Java coding is not my forte currently.
    thanks,
    V

  • BPM Collect Scenario errors at transform stage

    The BPM Collect scenario is using a Fork within a Block.
    Branch 1 - Loop Receive Append Container Endloop
    Branch 2 - Receive step of triggerIdoc
    End of Block
    Transform step - multiline container of XML documents to one XML document
    Send step
    BPM Errors at Transform step with JCo mapping not available.
    Whilst BPM in Error (Workflow in Error) more messages being received but never processed as the RECEIVE event is "lost" for these messages.
    We are looking at redesigning the BPM to reduce the likelihood of this transform error.
    In the meantime was looking at ways to Alert the administrator straight away to the error. As we have a workaround to get the process going and to pick up the stranded messages. So have started setting up the ALERT categories as described in How to Guide, for Adapter and Interface. Will this work?
    Also in the Transform step there is a box (system exception) but I can't enter anything in. Is there a way to do this if the Alert category doesn't report an error in the BPM. OR do I have to add the Transform step into a Block of its own?
    Advice gratefully received if we come up with a working solution will post it out here. Have spent a large amount of time reading posts and blogs on here but have not got a clear picture yet of what is best to do.
    thanks,

    > Whilst BPM in Error (Workflow in Error) more messages
    > being received but never processed as the RECEIVE
    > event is "lost" for these messages.
    This should give you an issue called Parked Messages. The best way to deal with this is to actually define a Local Correlation. In the Block Step properties, you will have an option, Use Correlation --> Give the name of the Correlation . This will make sure that when there is an error, the Correlation become inactiva and a new BPM instance is created.
    > In the meantime was looking at ways to Alert the
    > administrator straight away to the error. As we have
    > a workaround to get the process going and to pick up
    > the stranded messages. So have started setting up the
    > ALERT categories as described in How to Guide, for
    > Adapter and Interface. Will this work?
    Not sure if this will work. The issue is that the messages are passed to the IE already and will be in wait step waiting for an active BPM 's receive step How will another interface pick up this message?
    > Also in the Transform step there is a box (system
    > exception) but I can't enter anything in. Is there a
    > way to do this if the Alert category doesn't report
    > an error in the BPM. OR do I have to add the
    > Transform step into a Block of its own?
    This is what is called exception handler. Defined a Exception handler for the Block. Right Click block, insert Exception Branch, give name of the Hanler and then you can select this in the Transformation Step's System Error. This is like Try - Catch of Java.
    Regards
    Bhavesh

  • BPM collect messages error

    Hi
    we are experiencing problems in BPM Collect pattern, error is not clear.
    Our payload before input to BPM
    <record>
    <row>
    <key>1</key>
    <val1>1</val1>
    </row>
    <row>
    <key>1</key>
    <val1>1</val1>
    </row>
    </record>
    this is given to BPM, and BPM is following exact collect pattern in SAP Documentation like
    1. Block with restricted by correlation (/record:key1), deadline with 1 minute, used by correlation
    2. within Block, unlimited loop, with started recieve step, activated correlation, and append records with container operation
    3. multi-mapping transform step, with multiple records to single record and followed by send step.
    we are getting error in the blok step, no description of error.
    BPM is activated without any errors
    Please advise, appreciate all ur help.

    Any body got the solution for this . I am having same problem .
    My Payload as follows
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:BpmPatternCollectMessageToBeCollected xmlns:ns0="http://sap.com/xi/XI/System/Patterns">
      <ID>1</ID>
      <OverallNumber>1</OverallNumber>
      </ns0:BpmPatternCollectMessageToBeCollected>
    for BPMPattrenCollectTime BPM and I amhaving error on outbound side in BPE
    when I dig into technical details The BPM details as follows
    Error during result processing of work item for Reciving Message Step
    Regards
    Murali

  • BPM Collect Pattern Scenario :Container is empty for the loop at run time

    Hi Friends,
    I am working on BPM Collect Pattern Scenario after looking into the example delivered by SAP in namespace http://sap.com/xi/XI/System/Patterns and IP name as BpmPatternCollectPayload.
    After configuring the same and when it is run, I see strange behaviour as illustrated below
    1. Container step is empty and not able to see the counter for which it needs to be incremented at runtime
    2. I understand that Loop should start and it need to be incremented as when we get a new message into the same BPM.
    But I observe that it is creating a new message and loop never stops and completes the condition and comes out to go to next step.
    Request your help.
    Regards,
    Hussain

    Hi,
    define or declare a variable with name counter and type as integer in Container where you define abstarct variables...
    Thanks,
    Madhu

  • BPM Collect Pattern:File to IDoc

    Hi,
    My scenario is File to Idoc. An invoice excel file will be sent by the vendor.The excel has a built in macro, which converts the excel to a csv file and file is placed in a file share server.
    *Logic of Macro: *
    There will be a button in the excel file containing macro. In one excel file there would be multiple invoices that contains different number of item lines, The macro checks the u2018Invoice Numberu2019, lines with the same invoice number will be saved in one CSV file. So for example a excel file contains 5 invoices, when press the button that contains the macro, there will be 5 CSV files created under the same path, each CSV file contains one invoiceu2019s information.
      After this I have to post the Inovices in to SAP using an IDoc.
    So, I am using BPM collect pattern to achieve this. In the collect pattern,  I see a correlation defined on one of the source fields,  What does correlation exaclty do in my  case. Let's say I have defined a correlation on Source field called Invoice number.
    BTW I am using FCC on the filed adapter to change the CSV(Invoice) to xml
    Thanks,
    Kiran

    Hi
    to use Xpath for your receiver det. ref these blogs;
    a combination of logics should help you in this case ...
    Customise your 'XPATH' Expressions in Receiver Determination
    XPath to show the path (Multiple Receivers)
    File to Multiple IDocs (XSLT Mapping)
    Try removing BPM from ur scenario.
    1:n could be achieved without BPM
    Various multi-mappings and Optimizing their Implementation in Integration Processes (BPM) in XI.
    Regards,
    Suryanarayana

  • BPM collect pattern based on payload

    Hi,
    i am doing BPM Collect pattern based on stop message which is RFC. Means, i need to collect the IDOCs until i get the RFC from another system.
    For this i am using predefined pattern BPMcolllect pattern which is in BASIS SWCV.
    is it possible to do with out correlation?
    if correlation is required, there should be one common fiield between two messages?
    Thanks,
    karthik

    Hi ,
    Your design it self wrong, when you develop interface as a sender IDoc , then how come you will receive RFC in to BPM??
    so check your requirement with your client, if you want to collect messages there are different ways, implementing patterns in last option.
    search in sdn.
    Regards,
    Raj

  • BPM starting question

    Hi all,
    I have developed a BPM which basically reads 2 files (INVOICES and BILLING) makes some transformation and send it to a SAP R/3 system.
    Both files have a data field which it is used to correlate them.
    So when sender system send INVOICES file or BILLING file, SAP XI read it, begin the BPM which waits for the other to come. When the other file come the BPM continue in their next steps.
    But we have experienced the next situation:
    - Sender systems send 2 INVOICES files (duplicate files) and some time later send a BILLING file (only one).
    The process:
    1.- SAP XI reads the first INVOICE file and starts a BPM process.
    2.- SAP XI reads the other INVOICE file and starts another BPM process.
    3.- SAP XI reads the BILLING file and enroute it to the 2 BPM process
    Is there any configuration in my BPM or configuration scenario which doesn`t allow this situation. I only want one BPM for one pair of files.  
    Thanks.

    Thanks for your comments Udo.
    I need the correlation because there are days in which I receive several invoices and billing files (specially the first days of the month due to the bussiness process in sender system).
    But the source of the problem is on the sender system. Some times the generation of the files is done manually, and there are situations in which operator makes mistakes and generate multiple files for one day.
    The onwer of receiver systems wants that SAP PI can control this kind of situations. One situation is what I have described before: the BPM collecting pattern should work with two files.
    The normal behaviour is:
    INVOICE1 --> BPM (instance #1)
    BILLING1  --> BPM (instance #1)
    INVOICE2 --> BPM (instance #2)
    BILLING2  --> BPM (instance #2)
    INVOICE3 --> BPM (instance #3)
    BILLING3  --> BPM (instance #3)
    INVOICE4 --> BPM (instance #4)
    BILLING4  --> BPM (instance #4)
    But my situation is:
    INVOICE1 --> BPM (instance #1)
    INVOICE1 --> BPM (instance #2)
    BILLING1  --> BPM (instance #1) BPM (instance #2)
    Regards.

  • BPM performance question

    Guys,
    I do understand that ccPBM is very resource hungry but what I was wondering is this:
    Once you use BPM, does an extra step decreases the performance significantly? Or does it just need slightly more resources?
    More specifically we have quite complex mapping in 2 BPM steps. Combining them would make the mapping less clear but would it worth doing so from the performance point of view?
    Your opinion is appreciated.
    Thanks a lot,
    Viktor Varga

    Hi,
    In SXMB_ADM you can set the time out higher for the sync processing.
    Go to Integration Processing in SXMB_ADM and add parameter SA_COMM CHECK_FOR_ASYNC_RESPONSE_TIMEOUT to 120 (seconds). You can also increase the number of parallel processes if you have more waiting now. SA_COMM CHECK_FOR_MAX_SYNC_CALLS from 20 to XX. All depends on your hardware but this helped me from the standard 60 seconds to go to may be 70 in some cases.
    Make sure that your calling system does not have a timeout below that you set in XI otherwise yours will go on and finish and your partner may end up sending it twice
    when you go for BPM the whole workflow
    has to come into action so for example
    when your mapping last < 1 sec without bpm
    if you do it in a BPM the transformation step
    can last 2 seconds + one second mapping...
    (that's just an example)
    so the workflow gives you many design possibilities
    (brigde, error handling) but it can
    slow down the process and if you have
    thousands of messages the preformance
    can be much worse than having the same without BPM
    see below links
    http://help.sap.com/bp_bpmv130/Documentation/Operation/TuningGuide.pdf
    http://help.sap.com/saphelp_nw04/helpdata/en/43/d92e428819da2ce10000000a1550b0/content.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/3.0/sap%20exchange%20infrastructure%20tuning%20guide%20xi%203.0.pdf
    BPM Performance tuning
    BPM Performance issue
    BPM performance question
    BPM performance- data aggregation persistance
    Regards
    Chilla..

  • [scjp exam] garbage collection questions

    can someone please post me some garbage collection questions + correct answers, because i've taken the SCJP test again and i didn't passed it again. A co-worker of mine also didn't passed either.
    (We both got 0% on Garbage Collection every time) And i really thought i had it correct the last time.
    So please can someone mail/post me some garbage collection questions? thanks!

    The garbage collector collects unreachable objects.
    You have no control over when the objects are
    collected, but there is a guarantee that all
    unreachable objects will be collected before an
    OutOfMemoryError is thorwn.Exactly my thoughts...
    That's it. It really is just that simple. I scored 94%
    on the Programmer's Exam, with 100% in the garbage
    collection section.Hmm i got 54% last exam i took. I really begin to doubt about myself, because i find the questions on the exam so tricky.. Last book was Exam Cram (Java), and i found this a very nice and good book to study for the exam. Garbage collection is just one question, so it's either 0% or 100%. So far it hasn't gone anything higher then 0% with me.
    Here are some questions:
    1. When is the Object first available for garbage
    collection (when does it become unreachable)?
    Object o = new Object();
    Object p = o;
    o = null;
    p = null;p = null; -> available for gc.
    2. When is the Object first available for garbage
    collection?
    Object o = new Object();
    Vector v = new Vector();
    v.add(o);
    o = null;
    v = null;v = null; -> available for gc.
    3. Can the Vectors be garbage collected at the end of
    this code?
    Vector v = new Vector();
    Vector w = new Vector();
    v.add(w);
    w.add(v);
    v = null;
    w = null;yes
    Now i have a question:
    public int foo {
    Integer result = new Integer(10);
    result = null;
    return result;
    when is result available for gc?

  • Interface Mappings in BPM Collect Pattern

    Hello
    I am new to XI development and currently facing problems while implementing collect pattern of BPM.
    I am trying to map IDoc structure with target legacy format.In BPM I had a block with infinite loop where I am transforming IDocs to target legacy format.Then I am trying to transform list element (Multiline Abstract container variable) to form a single message.For this I tried to have interface map with Occurences 0..unbound..but while activation of Interface Map it gives error
    <b> Mapping program Message does not match the interface mapping. The number or frequencies of source or target messages for the message mapping are not identical to the number or frequencies of source or target interfaces.</b>
    If I use single line in Interface map then in BPM it gives error when passed Multiline element to this Interface map.
    I checked the sample program provided by SAP but I found out that every message interface was using same Message Type which has got occurence as 1 but in the message mapping program its 0..unbound.
    My question is can we have data type (or Message type )with Occurence as 1 and Message Mapping program using same message type with occurences 0..unbound..I tried to find such option but could'nt find that.Otherwise how to do Interface Map for transforming Multiline parameter of BPM to a single message.
    Please help..Thanks in advance..
    Regards
    Rajeev Patkie

    Initially I tried to perform test by tree view and it worked fine.But it was one message in the source and the same was in target.Later as given by you I updated XML source message.The source message looks like
    ******************Source Message***********************
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
      <ns0:Message1>
        <ns1:MATMAS_to_Stockware_MT xmlns:ns1="http://mccormick.com/ez_dev">
          <MAT_List>
            <ZPITNO>121212</ZPITNO>
            <ZPIDS>Test Message</ZPIDS>
            <ZPPOPN />
            <ZPCNQT />
            <ZPZLOC />
            <ZPZPCB />
            <ZPZCPA />
            <ZPGRWE />
            <ZPSAEL />
            <ZSPLDY />
            <ZPFRAG />
            <ZPZCRO />
            <ZPZOPT />
          </MAT_List>
        </ns1:MATMAS_to_Stockware_MT>
      </ns0:Message1>
    </ns0:Messages>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
      <ns0:Message2>
        <ns1:MATMAS_to_Stockware_MT xmlns:ns1="http://mccormick.com/ez_dev">
          <MAT_List>
            <ZPITNO>78912</ZPITNO>
            <ZPIDS>Test Message12</ZPIDS>
            <ZPPOPN />
            <ZPCNQT />
            <ZPZLOC />
            <ZPZPCB />
            <ZPZCPA />
            <ZPGRWE />
            <ZPSAEL />
            <ZSPLDY />
            <ZPFRAG />
            <ZPZCRO />
            <ZPZOPT />
          </MAT_List>
        </ns1:MATMAS_to_Stockware_MT>
      </ns0:Message2>
    </ns0:Messages>
    ************************End Source*********************
    if this would be the message multiline is generating its bound to fail as I guess every XML has one topmost element and over here.So I changed my source XML to look like
    ******************Start message******************
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
      <ns0:Message1>
        <ns1:MATMAS_to_Stockware_MT xmlns:ns1="http://mccormick.com/ez_dev">
          <MAT_List>
            <ZPITNO>121212</ZPITNO>
            <ZPIDS>Test Message</ZPIDS>
            <ZPPOPN />
            <ZPCNQT />
            <ZPZLOC />
            <ZPZPCB />
            <ZPZCPA />
            <ZPGRWE />
            <ZPSAEL />
            <ZSPLDY />
            <ZPFRAG />
            <ZPZCRO />
            <ZPZOPT />
          </MAT_List>
        </ns1:MATMAS_to_Stockware_MT>
      </ns0:Message1>
      <ns0:Message2>
        <ns1:MATMAS_to_Stockware_MT xmlns:ns1="http://mccormick.com/ez_dev">
          <MAT_List>
            <ZPITNO>78912</ZPITNO>
            <ZPIDS>Test Message12</ZPIDS>
            <ZPPOPN />
            <ZPCNQT />
            <ZPZLOC />
            <ZPZPCB />
            <ZPZCPA />
            <ZPGRWE />
            <ZPSAEL />
            <ZSPLDY />
            <ZPFRAG />
            <ZPZCRO />
            <ZPZOPT />
          </MAT_List>
        </ns1:MATMAS_to_Stockware_MT>
      </ns0:Message2>
    </ns0:Messages>
    **********************End Message****************
    but this produces only one output message
    ******************Start Message***********************
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
      <ns0:Message1>
        <ns1:MATMAS_to_Stockware_List xmlns:ns1="http://mccormick.com/ez_dev">
          <MAT_List>
            <ZPITNO>121212</ZPITNO>
            <ZPIDS>Test Message</ZPIDS>
            <ZPPOPN />
            <ZPCNQT />
            <ZPZLOC />
            <ZPZPCB />
            <ZPZCPA />
            <ZPGRWE />
            <ZPSAEL />
            <ZSPLDY />
            <ZPFRAG />
            <ZPZCRO />
            <ZPZOPT />
          </MAT_List>
        </ns1:MATMAS_to_Stockware_List>
      </ns0:Message1>
    </ns0:Messages>
    **********************End Message****************
    I am also pasting schema of message mappings
    *****************Source Schema************************
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema targetNamespace="http://sap.com/xi/XI/SplitAndMerge" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://sap.com/xi/XI/SplitAndMerge">
      <xsd:import namespace="http://mccormick.com/ez_dev" />
      <xsd:element name="Messages" xmlns:p0="http://mccormick.com/ez_dev">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Message1" form="qualified">
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element ref="p0:MATMAS_to_Stockware_MT" minOccurs="0" maxOccurs="unbounded" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
    ********************End Source***********************
    ********************Target Schema******************
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema targetNamespace="http://sap.com/xi/XI/SplitAndMerge" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://sap.com/xi/XI/SplitAndMerge">
      <xsd:import namespace="http://mccormick.com/ez_dev" />
      <xsd:element name="Messages" xmlns:p0="http://mccormick.com/ez_dev">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Message1" form="qualified">
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element ref="p0:MATMAS_to_Stockware_List" />
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
    ****************************End Target*************
    Thanks in advance.
    Regards
    Rajeev

  • BPM Collect Pattern.

    Hi Experts !
    I am trying to implement this scenario.
    Source File Adapter -
    Message - Vendor # - Material # [Only one material ]
    Pattern : Collect Pattern
    Key for Correlation - Vendor #
    Message collection in Loop for a counter of 3 Messages.
    Target file on Directory to be created using file adapter should be of this structure:
    <Header> 1.1
    vendor
    <Header/>
    <Items> 1..Unbounded
    <Material>Matl1 <Material/>
      <Material>Matl2<Material>
      <Material>Matl3<Material/>
    <Items/>
    When collect messages into a multiline container it will be based on source message.  The multiline container will be looking like this:
    vendor# Material#
    vendor# Material#
    vendor# Material#
    after all the three records are collected.
    What mapping from this point is required to get the output explaine above.
    Please mention whether it is a step outside BPM or inside BPM.
    When system encounters a multiline container does it process each message at a time or is the mapping applied to all the messages at a time.
    Thanks in advance..

    Thanks for sharing your views.
    As I mentioned I will stop collection based on a counter.
    Coming to my question again..
    N : 1 Mapping..
    Can you elaborate on N:1 mapping you are suggesting.
    Here is what I did ..
    One Msg...   -
    >         Multine Line                           Mapping
    abs                          similar to One msg          source                target
                                                                        multiline abs        target_abs..
    Message Mapping details...this is what i use in Intf.Map..aplied above.
      vendorx         -
    > VendorX
      material1 1.1 -
    > Material [1..n]
    where the output I get is only the last item processed...
    If I pass                                       Output
      Vendor1 - Matl1                       Vendor - Matl3....
      Vendor1 - Matl2
      Vendor1 - Matl3
    Where am I going wrong...
    thanks.

  • Problem in BPM Collect scenario

    Hi,
    I am implementing a collect scenario of BPM in which I am collecting Acccount details of a customer and posting them to receiver.
    In Receiver Determination, I have two objects, one with Sender system and BPM process and other with BPM process as sender and Receiver System.
    However, when scenario is run, in SXMB_MONI I see success flag for the processgin of message with Tilted green flag in column C stating that "Message Scheduled at the outbound End." I am not able to understand the meaning of this message.
    I have checked queues; there are no queues with any messages stuck. Also, because there is no error in the processing of message, I am not able to check the point in BPM till where processing was successful.
    Kindly let me know where I can go and check for possible causes of errors. Also, let me know if BPM process could be debugged at runtime.
    Thanks and regards,
    Bhavish Bhatia

    to check the successful point of execution of the bpm u need to follow thru the grpahical workflow log which can be found either in the transaction sxmb_moni_bpe or traverse by clicking on the PE column.
    u can check this below link for more on:
    <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e7bc3a5a-0501-0010-1095-eb47159e169c">Monitoring ccBPM - Howto Guide</a>

Maybe you are looking for