BPM ParforEach Loop

I am having a BLOCk in my BPM. The Mode of the BLOCK is  ParforEach.
There is another parameter "CurrentLIne". I dont know what it means and how do I define that. Because its a mandatory fields and when I hit the dropdown box, I am seeing Blank.
In the Multiline Element Attribute : I have assigned an ABSTRACT interface.

Hi Karen,
Multiline Element Attribute : will hold all the abstract messages.
But when you are looping your block it will process only particular abstact message (current).
Currentline is similar to internal table work area in ABAP.
current line will hold a current message when you are looping where as multiline will hold all the messages.
so create another normal abstract container variable with the same abstract interface as that of multiline element (not multiline -  do not check multiline checkbox for this).
and use the same in the block configuration,
Regards
Anand
Message was edited by: Anand Torgal

Similar Messages

  • BPM: ParForEach Multiline Issue

    Hello,
    In an integration process I use the following step sequence:
    Transformation: Splitting Abstract Interface A to Multiple Abstract Interfaces A
    Block (ParForEach): Loop over multiline container element ( referring to abstract interface a),
    and send single message (singleline container element)
    Basic behavior of the operations mapping is the following:
    abstract interface a ( 1 occurence) -> abstract interface a (0..Unbounded occurences)
    Source Message:
    submission
    item
    item
    item
    Target Message:
    submission
      item
    submission
      item
    submission
      item
    In this case I would like to loop over the submissions (using a ParForEach Block) and send three single messages with this structure:
    <submission>
    <item/>
    </submission>
    My problem now is the following: When I set the proporties of the ParForEach Block I select multiline
    container element a - this is working fine - however when I want to select "current line" the dropdown
    list of possible container elements is empty.
    I have however set up two container elements (both are referring to abstract interface a), for one of them
    the multiline option is activated.
    Why does this not work as expected? Could it be a problem with the transformation step to create a
    multiple messages?

    Check if:
    1) The single line element defined is having the block name under the Container column (and not process)
    2) Check the First, Second, Third points mentioned in this blog...they should solve your problem:
    /people/milan.thaker/blog/2008/08/05/modes-in-block-step-of-bpm
    Regards,
    Abhishek.

  • BPM. parForEach block. deadline. multiline element

    Hi all,
    I have BPM where block parForEach exist. In that block there is another block with send message step(application confirmation demand) and deadline with throw exception step. In parent block (parForEach) I catch this exception and add this element to multiline element.
    After parent block(parForEach) I check if multiline element is empty or not and if not I map this element in singleline element and try to send.
    The problem is that BPM crashes on transformation from multiline element to singleline element. Workflow log shows CX_SY_REF_IS_INITIAL error. I see this error when multiline element is empty but I especially insert switch step that check if multiline element is empty or not and it shows that element isn't empty.
    I already check mapping and also try change multiline element that doesn't helps.
    Please help.
    Maxim.

    Hi Mario,
    thanks for reply!
    When multi element(I specially drop down append step) is empty its go to the "otherwise" branch. So I think the branch is working.
    Maxim.

  • BPM - Parallel Looping - numberOfCompletedIterations.

    Hi,
    In the human activity when using parallel looping, two local attributes are generated automatically currentCollectionItem and numberOfCompletedIterations. I need the value in the numberOfCompletedIterations to my webdynpro java component. I mapped the attribute to the string attribute with function String(/numberOfCompletedIterations), irrespective of the number of iterations completed I am getting the value as 0.
    Any help will be really appreciated.
    Best Wishes
    Idhaya R

    hi,
    hope this link will help u to know about parallel cursor ie using loops inside loops
    [http://www.****************/Tutorials/ABAP/ParallelCursor.htm]
    regards,
    priya

  • BPM ParForEach and ForEach

    Hi All
    I have searched the web,  but could not fine any  blog about ParForEach / ForEach
    does any one knows of any step by step scenario for ParForEach / ForEach
    tanhks.

    You're asking about dynamic parallel processing, which is described in the online help [over here|http://help.sap.com/saphelp_nw70/helpdata/EN/c5/e4b94a453d11d189430000e829fbbd/content.htm]

  • BPM finishes when reaching exception in loop block

    Hi everybody,
    we got a loop block in BMP. In the loop block we catch mapping errors by using an exception branch.
    What we can see is that when an exception is thrown the process steps into the exception branch an than is leaving the loop block!! So the remaining single messages are not processed!
    Is there a workaround?
    Regards Mario

    Hi Mario,
    Have you used the local correlation for block step.
    Can you please give steps you used in BPM, also try to see the below threads
    What is the use of block step in BPM? Please help!
    BPM ParforEach Loop
    BPM loop
    also,
    BPM Block step
    Using BPM (Blocks) when Incoming message has multilple rows
    Doubt in BPM
    BPM: Block Processing: ParForEach
    Regards
    Chilla

  • Loop in bpm

    Hi,
    In bpm which loop is used? ( for , while do etc) ?
    Thanks ,
    Somenath

    Hi somenath,
    in my documentation there is only one loop available, which is called "while loop".
    So I think it works like its called
    "The loop continues to run while the end condition returns true. To specify the end condition, use the condition editor"
    reward every helpful answer
    regards, Steffen

  • What is the use of block step in BPM? Please help!

    Hi Experts,
             I would like to know what is the use of block step in BPM? In what cases we can use it?
    Can somebody explain BLOCK by relating to any programming language ( java) control step?
    Please help!
    Thanks
    Gopal

    Hi,
    Block step is similar to what we use curly braces in most of the languages which defines the scope. For example if we are using loop step in bpm to loop through some variable then we can use block step to restrict the scope of loop step up to some point.
    Thanks and Regards,
    Sudheer.

  • Idocs are not merging in BPM

    Hi Experts,
            I am doing one scenario for merging the Idocs data in BPM and sending this one as file.I have done the following steps in BPM
    A. Loop with infinite
        1.Receive
        2.Container Operation(Append)
        3.Container Operation(Assign) for count
      End loop 
    B. Transfermation
    C. Send
             While executing my scenario it is giving only first idoc data in receiver file but its not merging the all idocs data. can you please tell me where i am doing mistake.
    Thanks & Regards,
    Purushotham

    HI,
    In your Infinite Loop how you are breaking up the loop...
    The Receiver step is just accepting the 1st IDOC and BPM instances get instantiated. But later on the Loop is not continued to wait for other IDOCs.
    Kindly have a look Re: Idoc multi mappings in a single interface
    I am not sure why you are using BPM for this...as you can use the features like
    IDOC Collection without BPM, Packaging etc.
    Check this blog for multiple IDocs with multiple IDoc types
    IDOCs (Multiple Types) Collection in BPM
    Refer - SAP Network Blog: Collecting IDocs without using BPM
    Collecting IDocs without using BPM
    Refer similar discussion
    ccBPM Collect Pattern Error
    Thanks
    Swarup
    Edited by: Swarup Sawant on Aug 18, 2008 6:54 AM

  • Flat file to RFC need help

    Hello , i have a flat file scenario : XML to RFC and response back to xml , in which case i have a more complex scenario.
    Instead of calling RFC multiple times i need to call RFC multiple times through a BPM loop through one xml with duplicated strcutures how is it possible please help me
    Krishna

    Hi ,
    Just More info-
    Actually if you do the occurence as 0-n then you will be having structure like this-
    <Messages>
         <Message1>
              <Source>
                   <Header> </Header> (1..1)
                   <Line> </Line> (1..1)
              </Source>
              <Source>
                   <Header> </Header> (1..1)
                   <Line> </Line> (1..1)
              </Source>
         </Message1>
         <Message1>
                   <Source>
                        <Header> </Header> (1..1)
                        <Line> </Line> (1..1)
                   </Source>
                   <Source>
                        <Header> </Header> (1..1)
                        <Line> </Line> (1..1)
                   </Source>
         </Message1>
    </Messages>     
    In this case you have multiple Message1 under Messages node. So now it is N number of messages under one tag.
    For your scenario, you can try like this-
    1) No need of changing any occurence anywhere.
    2) Use BPM -mentioned in my earlier reply
    I think it will work without 1:N or N:1 mapping Because in your case there is no multiple messages, but you have multiple occurences of each set. So I think you can easily handle with parForEach loop.
    For eg. on ParForEach -
    http://help.sap.com/saphelp_nw2004s/helpdata/en/27/db283fd0ca8443e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/27/db283fd0ca8443e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/27/db283fd0ca8443e10000000a114084/frameset.htm
    Also check in BPM Patterns for ParForEach.
    Regards,
    Moorthy
    Just check it

  • SOAP adpater

    I need to use SOAP adapter at receiver side and expecting 7000-10000 records from sender side.
    At sender side Iam using Proxy.
    I suspect if SOAP adapter handle this load, BTW I have to use SOAP at reciver side.
    Keeping this in mind, any suggestions please.
    one solution I can think of is running a batch at sender side, but how many records I can sender at once.
    any thoughts on this are appreciated.

    Hi,
    There are two ways of handling this thing.
    Option 1. Send the data in batch from Proxy itself by having a for loop in ABAP Client Proxy.
    Option 2.To us ethe BPM and to have parForEach loop in a block which will send records in batch as you want.
    Hope this solves your problem. Let me know if you need more details on the same.
    Thanks
    Amit
    Reward points if solution helps

  • Exception caught by adapter framework

    Hi
    My scenario is based file -->RFC with BPM (parforEach) and multimapping.
    File adapter is picking data according to input file, but RFC couldn't able to process each split data. I am gettign following error.
    <b>2006-09-11 10:39:07 Error Exception caught by adapter framework: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: functiontemplate from repository was <null>
    2006-09-11 10:39:07 Error Delivery of the message to the application using connection AFW failed, due to: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: functiontemplate from repository was <null>.</b>
    Any idea how to resolve this issue..!
    Regards
    Sankar!

    Hi..
    Does this way i mapped file to BAPI, is this correct way ?
    does we change the BAPi structure like this in target side?
    Source Structure:  TargetStructure
    Messages (1:1)    Message(1:1)
    Message1(1:1)      Message1(1:1)
    MT_Request(1:1)
    Recordset(0:U) --> BAPI_INCOMINGINVOICE(0:U)
    HDR (0:1)           HeaderData(1:1)
      LINEITEM(0:U)                 
       field1(0:1) --->     filed1(0:1)
                           field2(0:2)
                HDR--->GLACCOUNTDATA(0:1)
      LINEITEM(0:U)---> item(0:U)
    field3(0:1) --->         field(0:1)
    field4(0:1) --->         field2(0:1)
    and my BPM is :
    Receive>Transfromation->Block with asyncSEND--->
    Receiver      : File_MI
    Trasformation: IM, sorec: File_AI and tar: BApi_AI
    Block -->parForeach, multi: BAPI_AI, curr: BAPI_AI
    asyncSend-->BAPi_AI
    <b>Note: My input file should have various headers with associated line items...!</b>
    Thanks,
    Sankar!

  • Huge file problem

    Hi All,
    I have input xml file which consists of 60,000 records and its size above 10MB. I wanted to process this file in XI such a way, where file has to be pick and process, but only 10,000 records should be process also file not split.
    Its xml not flat file, As I know in FCC we can achieve it by "Record st per mesage"
    Regards,
    Sameer

    Hi Sameer,
    You can try out this scenario with BPM by looping 10000 times but then there is a point of contention because BPM is a memory hogger and looping it for 10000 times , the performance of the system is going to affected seriously.
    Regards
    joel

  • Process, Block & Container Operation

    Hi all,
    What is the difference between process and block containers?? Where would a container operation step be adptly used?
    I am trying to do a BPM scenario with a send step inside a block and I can't set multiline for a block container. I am little confused. Any help.
    -Teresa

    Hi Teresa,
    Block :
    Block is similar to what we use curly braces in most of the languages which defines the scope. For example if we are using loop step in bpm to loop through some variable then we can use block step to restrict the scope of loop step up to some point and block is something similar to defining scope in other prog. languages. the local variables defined in this has a scope of it only and others cannot access the same and block Recieve step is not required just use Send step if it is async message.
    Block- is for logical grouping of the process steps
    http://help.sap.com/saphelp_nw04/helpdata/en/f6/e1283f2bbad036e10000000a114084/content.htm
    Container :
    A transformation step in BPM is a abstraction of message/interface mappings, So u can use a container variable directly inside your message mappings to map container variable to data element.
    U can look at the thread : "Container object in Message Mapping" to know how to access the container variable inside your message mapping.
    Contaniers - Variables in the Integration process.
    https://www.sdn.sap.com/sdn/collaboration.sdn?contenttype=url&content=https%3A//forums.sdn.sap.com/thread.jspa%3FforumID%3D44%26threadID%3D41502.
    Regards
    Agasthuri Doss
    Message was edited by: Agasthuri Doss Baladandapani

  • Problem with multiline

    Dear all,
    My requirement is like thiis.
    I have n senders(10) which i need to merge in to 1 and send to the receiver.
    Logic implemented:
    1)Loop:
    Counter!=5.
    2)Receiver
    LineElement
    3)Container1
    Append single line element to multi line element
    4)container2
    Assign counter+1.
    end loop
    5)Transfermation
    interface mapping
    Single line element
    target interface
    Note:
    If I take the line item as Multiline I am geeting an error that the element must not return multi line
    6)send
    targetinterface
    when I execute the same I am getting 2 different messages ie 2 different files are generated with out merging.
    Kindly help.
    Thanks,
    Srinivas

    Hi
    use the following process in the BPM
        start>loop>receive>container1>container2>transform>send-->stop
    container1-->to collect the multiple idocs.
    container2-->to increment the value of the variable to check the loop condition.
    >If I take the line item as Multiline I am geeting an error that the element must not return multi line
    if you are getting the error as, that the element must not return multi line
    for that check whether the occurence for the target node is 0..unbounded.
    Thanks
    Rinku

Maybe you are looking for