Bundling of idocs using BPM

Hi
If you are using BPM to bundle the idocs and send them in file format to target system.............. here we can think of 3 different options on which we can bundle
1. Payload based
2. Message based
3. Time based.
Could you plz confirm me if we can achieve all these 3 options even without BPM in the application system ?? If we can achieve this in the applicaiton system itself ........are there any situations in which we are foced to use BPM for this particular scenario (Bundling of idocs)
Thanks
Kumar

Hi Kumar,
Very simple example which  I had faced....
If you bundle idocs are application level..i.e. by setting XML port to collect idocs you will have multiple Control records i.e. control record for every idoc where as if you bundle them using BPM you can have only one control record. ( which we need most of the time while bundling idocs.)
Also in BPM you can set correlation on payload data. You can have multiple condition here...but at application level you do not get that control. Basically I think you get a control over Payload in BPM and you can play as you want.
Again even at application level if you try to bundle large number of idocs it will give you memory dump ( in sap)..
But bundling idocs at application level is faster process than BPM.
Nilesh

Similar Messages

  • Bundling of IDOCs using BPM.PLS Help .Its very very URGENT

    Hi all,
    I have a IDOC to file scenario in which I have to bundle some number of INVOIC02 IDOCs.
    For this I have an IDOC whosw occurance is 1...1.
    I have an XSD for the same IDOC whose max occurance is 1.....9999999999.
    Si I have created one mapping for these two(i.e IDOC with max occurs 1 and IDOC with max occurs 9999999999.)
    I created one more mapping  for IDOC XSD and the target file structure.
    For this scenario how many abstract interfaces and interface mappings do I need to create?
    Can anybody explain the BPM flow in detail in this case?
    Thanks in advance.

    Hi  Rambabu Mujja  ,
    The following websites wil solve u'r problem:
    A Step-by-Step Guide on IDoc-to-File Using Business Service in the XI Integration Directory
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e07dcaa0-a92b-2a10-3a96-b3d942bd1539
    How to convert an IDoc-XML structure to a flat file and vice-versa in XI 3.0
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/46759682-0401-0010-1791-bd1972bc0b8a
    Introduction to IDoc-XI-File scenario and complete walk through for starters.
    /people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters
    IDOCs (Multiple Types) Collection in BPM
    /people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm
    cheers!
    gyanaraj
    ****Pls reward points if u find this helpful

  • Collection of IDOCs using BPM

    Hi Experts,
    I am trying collection of IDOCs by using BPM.
    I ran into problems and In moni,  the error is
    <SAP:Code area="BPE_ADAPTER">SYSTEM_FAILURE_INTERNAL</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>An internal error has occurred</SAP:Stack>
    Details of above error in trace is : 
    <Trace level="1" type="T">--start sender interface action determination</Trace>
      <Trace level="1" type="T">select interface BLAORD.BLAORD03*</Trace>
      <Trace level="1" type="T">select interface namespace urn:sap-com:document:sap:idoc:messages</Trace>
      <Trace level="1" type="T">no interface found</Trace>
      <Trace level="1" type="T">--start receiver interface action determination</Trace>
      <Trace level="1" type="T">Loop 0000000001</Trace>
      <Trace level="1" type="T">select interface UpdatedContracts_abs_idocs*</Trace>
      <Trace level="1" type="T">select interface namespace http://com/UpdatedContracts/</Trace>
      <Trace level="1" type="T">no interface found</Trace>
      <Trace level="1" type="T">--no sender or receiver interface definition found</Trace>
      <Trace level="1" type="T">Hence set action to DEL</Trace>
      <Trace level="1" type="B" name="CL_IDX_IDOC_RESOURCE-GETBLOBDATA" />
      <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE" />
      <Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
    Here i am trying to collect IDOCs for 5 minutes and i need to send them in XML format. Here i have mapping logic and that logic is working perfectly.
    What i am dong is
    1. I am sending IDOCs from R3 system to BPM in XI. ( Here to push IDOCs from R3 system to BPM, do we need to do extra ALE settings. Actually With out BPM simple IDOC to File is working fine, With BPM only i am having error. )
    2. How to reslove above problem. AS per my understanding everthing is fine.
    Thanks,
    Subbu

    Hi Rama Subbarao,
        Error: Check with your loop condition and process steps.
           Collecting of IDOCS using BPM is good, If u want to send the 100 IDOCS per one hour with single BPM it will takes times , Some performs issues and hardware issues are raising.
    Suppose if u send 1000 Idocs per one hour it will takes much time.
    Other Process:
      The collecting of IDOCS it will be downloaded into FILE System.Once IDOCS is downloaded into FILE, it will be not changed the IDOCS.
    Using FILE Adapter we send the flatfiles data from FILE System to XI. if  u using this process performance wise its very good.
    Regards,
    Sateesh N

  • Processing large volume of idocs using BPM Processing

    Hi,
    I have a scenario in which SAP R/3 sends large volume say 30,000 DEBMAS Idocs to XI. XI then sends data to 3 legacy systems using jdbc adapter.
    I created a BPM Process which waits for 4 hrs to collect all the idocs. This is what my BPM does:
    1. Wait for 4 hrs Collect the idocs
    2. For every idoc do a IDOC->JDBC Message transformation.
    3. Append to a Big List
    4. Loop at the Big list from step 4 and in the loop for
    5. Start counter from 0 and increment. Append to a Small List.
    6. if counter reaches 100 then send a Batch JDBC Message in send step.
    7. Reset counter after every send.
    8. Process remaining list i.e if there was an odd count of say 5300 idoc then the remaining 53 idocs will be sent in anther block.
    After sending 5000 idocs to above BPM following problems are there:
    1. I cannot read the workflow log as system does not respond.
    2. In the For Each loop which loops through the big list of say 5000 idocs only first pass of 100 was processed after that the workflow item is not moving ahead. It remains in the status as "STARTED" but I do not see further processing.
    Please tell me why certain Work Items are stuck is it becuase I have reached upper limit and is this the right approach? The Main BPM Process is also hanging from last 2 days.
    I have concerns about using BPM for processing such high volume of idocs in production. Please advice and thanks in advance.
    Regards
    Ashish

    Hi Ashish,
    Please read SAPs Checklist for proper usage of BPMs: http://help.sap.com/saphelp_nw04/helpdata/en/43/d92e428819da2ce10000000a1550b0/content.htm
    One point i'm wondering about is why do you send the IDocs out of R/3 one by one and don't use packaging there? From a performance stand point this is much better than a bpm.
    The SAP Checklist states the following:
    <i>"No Replacement for Mass Interfaces
    Check whether it would not be better to execute particular processing steps, for example, collecting messages, on the sender or receiver system.
    If you only want to collect the messages from one business system to forward them together to a second business system, you should do so by using a mass interface and not an integration process.
    If you want to split a message up into lots of individual messages, also use a mass interface instead of an integration process. A mass interface requires only a fraction of the back-end system and Integration-Server resources that an integration process would require to carry out the same task. "</i>
    Also you might want to have a look at the IDoc packaging capabilities within XI (available since SP14 i believe): http://help.sap.com/saphelp_nw04/helpdata/en/7a/00143f011f4b2ee10000000a114084/content.htm
    And here is Sravyas good blog about this topic: /people/sravya.talanki2/blog/2005/12/09/xiidoc-message-packages
    If for whatever reason you can't or don't want to use the IDoc packets from R/3 or XI there are other points on which you can focus for optimizing your process:
    In the section "Using the Integration Server Efficiently" there is an overview on which steps are costly and which steps are not so costly in their resource consumption. Mappings are one of the steps that tend to consume a lot of resources and unless it is a multi mapping that can not be executed outside a BPM there is always the option to do the mapping in the interface determination either before or after the BPM. So i would sugges if your step 2 is not a multi mapping you should try to execute it before entering the BPM and just handle the JDBC Messages in the BPM.
    Wait steps are also costly steps, so reducing the time in your wait step could potentially lead to better performance. Or if possible you could omitt the wait step and just create a process that waits for 100 messages and then processes them.
    Regards
    Christine

  • File to Idocs using BPM

    Hi,
    Current Interface Flow - File (xml) to Idoc (single Idoc type)
    Thirdparty sends a File for Goods Receipt. This file may have multiple orders.
    Orders are sorted in an xslt by ORDNUM. Each record has a delivery type (Deliver Type PO or Delivery Type STO). For each order Graphical Message mapping occurs.
    In case of PO, inbound delivery number and item number have to be received from ECC via an RFC call and passed to VBELN and POSNR. While in case of STO, source field ORDNUM and ORDITEM are passed to VBELN and POSNR. (RFC call happens only for POs, not for STOs)
    In case of STO, TCode  will be MB0A.and IDoc would be WMMBXY (As is the case right now)
    In case of PO, there may be two cases -
         a) There is at least one response from ECC for all the line items inside an order --> in this case TCode will be MB0A and IDoc is  WMMBXY .
         b) If there is no inbound delivery number for any line item from ECC inside an order --> TCode MB01 will be used and IDoc used is WMMBXY
    So for all the above cases Target IDoc is WMMBXY.
    Changes to be done - Now  File (xml) to Idoc (Two different Idoc types, WMMBXY and DELIVERY03)
    Now there is an additional requirement that I will be using an additional IDoc (DELIVERY03) in above case a).
    I want to use BPM in this case
    1) RFC call in message mapping to get the inbound delivery number (for POs only) (Should be before the message enters BPM)
    2) Separating the messages based on IDoc type
    3) Interface / Message mapping for each IDoc type
    4)Send the message to ECC
    Please suggest how to proceed with BPM
    Thanks,
    Varun
    Edited by: Varun Reddy on Feb 4, 2011 4:47 PM

    Hi Varun,
    Follow this thread... You have answer for this.
    This link gives design ideas for your requirement
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    Follow Bhavesh discussion. It might be helpful too
    Message Split: File to Multiple IDOC Types

  • FILE TO IDOC USING BPM

    Hi,
             I am the fresher and new to XI. I want to know the step-by-step procedure for file to idoc scenario using bpm.I require it urgently.
    Please help me out.
    Thanks and have a nice day.

    Sangeet - Check this blog :
    <a href="/people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping to multiple IDocs using IP in ccBPM</a>
    Hope this helps.
    Cheers!
    Shireesh M

  • Multi-mapping with message bundling but without using BPM

    Hi all,
    I have a requirement to bunch specific no. of records (say 50) from source message and create separate target messages for those bunches. For example, if the source message has 120 records, then there should be three separate target messages created containing 50, 50 and 20 records each.
    I am wondering whether this multi-mapping is possible without using BPM, as the typical no. of records in the source message are in the range of 600 to 800, and rarely (twice or thrice a month) they shoot up to 2000. So my concern is whether BPM would affect the performance. We are using PI at SP12.
    Regards,
    - Shankar.

    Sorry for late reply.. Well the sender is a file system, which sends a single XML file containing multiple records. (I mean I have a sender file adapter that polls periodically from a specific path and picks up the file when it is available)
    The no. of records in the source file may be different in each run. The requirement on the receiver system is that it can handle a file which has maximum of 'n' records only (say 50 in my example)
    Now the sender file can contain any no. of records. It may contain 10 on some day, or 200 the next day, or 120 on the third day. But on the receiver side, I want the files to be created such that each will contain AT MAX 50 records.
    So, if source file has <=50 records, then there will be only 1 target file having the same no. of records.
    If source file has between 51 to 100 records, then there will be two target files. One will have 50 records, and the second will have remaining records.
    And so on..
    Regards,
    - Shankar.

  • Idoc to Idoc using BPM

    Dear Friends,
      I am sending the Idoc from one ECC server to other ECC server using XI, it has been completed ,but reciever side after one hour only it has to be updated.
    so in this case how it's possible with BPM or any other method is available.
    Please let me know the process.
    Regards,
    Shalini shah.

    I am sending the Idoc from one ECC server to other ECC server using XI, it has been completed ,but reciever side after one hour only it has to be updated.
    so in this case how it's possible with BPM or any other method is available.
    With BPM you can have a wait step inbetween the receive and send ........not a good option to make the BPM wait for 1 hour....
    Without BPM...refer the replies of Samiullah in these two threads:
    Re: Can I slow down Processing of each mesg in PI?
    Re: Delay in MM possible ?
    Regards,
    Abhishek.

  • JDBC to IDOC using BPM

    Hi Experts,
    I am doing the scenario JDBC to IDOC
    Note: i need a solution without stored procedures
    My requirement is , in sender JDBC side
    1) We need to select data from 3 tables from the DB ( I think we can do this by JOIN query specified in the channel)
    2) after selecting data we need to update all 3 tables
    (I think we can't do this, as we have only one update option in the sender JDBC channel). So i want to go for BPM.
    Can we do like this...??
    2 mappings:   
    --> sender JDBC o/p structure (MT-1)   to  IDOC structure(MT-2)                                         (MM-1)---->  (IM-1)
    --> sender JDBC o/p structure (MT-1)  to  JDBC update structure (for 3 tables) (MT-3)                 (MM-2) ----> (IM-2)
    BPM:
    MT-1                    (IM-1)                                                     (IM-2)
    Receive           Trnsformation             AsyncSend to R/3             Transformation             Async Send to JDBC(Receiver)
      Step                    Step1                                                   Step2
    MT = Message Type;   MI = Message Interface;    IM = Interface mapping;    MM = Message mapping
    Edited by: murali krishna on Mar 9, 2010 8:24 AM

    u do not require a BPM..
    the method that u specified is right..
    mappings:
    --> sender JDBC o/p structure (MT-1)   to  IDOC structure(MT-2)                                         (MM-1)---->  (IM-1)
    --> sender JDBC o/p structure (MT-1)  to  JDBC update structure (for 3 tables) (MT-3)                 (MM-2) ----> (IM-2)
    just in the 2nd mapping that updates the tables the receiver service is same as the sender ..
    also specify both the mappings in the interface determination...first the update mapping and then the Idoc one and click the maintain order at runtime so that Idoc is trigeered only after update mapping is done..

  • Collecting multiple idocs using BPM

    Hi,
             I have a scenario where idocs sent from R/3 system are collected in Xi and posted as a single message in the file. We have done all the configurations both in XI and R/3 pertaining IDOC.
    When we trigger an idoc in the R/3 system,we are able to see the message that IDOC has been sent to XI system. But we are unable to see any of the message transfers in SXMB_MONI.
    (In simple words our interfaces are not getting triggered.)
    Could anyone help us in rectifying the problem?
    Thanks & Regards,
    Vishnu.

    When you trigger the IDOC from R/3
    --Did u complete the configuration part of sending the IDOC to XI, have you created the TRFC POrt in R/3, cross check the RFC dest which you are using here is pointing to Right Xi box?
    Your configration looks fine for atleast to take IDOC in XI, rest i am not sure at this point.
    ---No errors in the SM58 on R/3?
    ---IDOC metadata is loaded in XI? do u c any entry in the IDX5?
    --Is your IS been configured wth the tracle level parameters, if yes set it to 3 value
    --is runitme paramter LOGGING, LOGGING_PROPOGATION,LOGGING_SYNC present in SXMB_ADM?
    if you have these then atleast you should c an entry in SXMB_MONI with with either sucessfull or failed state.
    More importanatly the LS name of the R/3 is according to standards what SAP says in SLD?
    Edited by: Nisar Khan on Feb 28, 2008 11:00 AM

  • Asynchronous, but need Ack without using BPM and IDocs.

    Hi Experts,
                     I would like to do a scenario i.e., "Asynchronous communication, but need Acknowledgement without using BPM and also without using IDocs whether it is sender side or receiver side". Please help me.
    Thanks in advance
    Srihari.

    Without using BPM will be little longer process. But the alternative way is to add one more receiver in the receiver determination and send some file to that location with the actual mapping getting executed for the actual receiver. and in the second interface you can get the file created at second receiver back to the source location. But this will be little long as compared to synchronous scenarios.
    Flow:
    Source
              Receiver 1--> Actual mapping as per requirement
              Receiver 2(For Ack)--> Create a mapping with blank file sent to Receiver
    Receiver 2-->File Adapter--> Source through 2nd mapping/interface and keep the File adapter pooling interval around 5 sec or less so that you can get the file back to source location.
    Regards
    Anand

  • Idoc(receiver) message splitting using BPM

    Hi,
    could you provide some blogs which is useful for Idoc (as a Receiver) message splitting (1:N scenario) using BPM.
    I have gone thru some of the Blogs, i didn't find good one according to this scenario.
    Thanks
    Praba

    Hi Michal,
    Thanks for ur reply.
    You said " if you have one message and want to have multiple IDOCs
    there is no need for a BPM -
    you just need to change IDOC occurance - that's all"
    I agree to your point.
    My scenario is more or less same but "With single message , i need to generate multiple Idocs" based on synchronous proxy response from R3. That is the reason we already gone with BPM.
    Already i used the BPM in my interface due to req.  It was working. Earlier i was posting single Idoc to R3 with multiple Header segment (each Header segment has one quantity)
    Now due to req. change, for each single quantity (quantity is my source Message Type field), i need to post single Idoc to R3  if i get response from R3.
    My XI version PI 7.0 SP14
    Idoc structure:
       <xsd:attribute name="SEGMENT" type="xsd:string" fixed="1" use="required"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
       </xsd:complexType>
    - <xsd:complexType name="WPUWBW.WPUWBW01";>
    - <xsd:annotation>
       <xsd:documentation>POS interface: Upload goods movements</xsd:documentation>
       </xsd:annotation>
    - <xsd:sequence>
      <xsd:element name="EDI_DC40" type="EDI_DC40.WPUWBW.WPUWBW01"; />
       <xsd:element name="E1WPG01" type="WPUWBW01.E1WPG01"; minOccurs="0"
       maxOccurs="9999999999" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
       </xsd:sequence>
       <xsd:attribute name="BEGIN" type="xsd:string" fixed="1" use="required"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
       </xsd:complexType>
       </xsd:schema>
    Already I am using this Idoc structure in various interfaces also. If i edit the occurance of the this Idoc and import in External definition with same name, I feel it afffect mapping in other interfaces also.
    Inputs are highly appreciated.
    Edited by: Prabaharan Rangasamy on May 22, 2009 4:14 PM

  • Multi-Mapping in IDOC without using BPM ?

    Hi ,
    Please check ..
    Can below given blog can be used to achive Multi-mapping in IDOC without using BPM ?
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    Regards
    PS

    Solved .. Thx every one .
    Approache Used :
    1. Created mapping  with Change signature on target Message type(idoc) with 1..N Occurence.
    2. Operation mapping with change Occurence on Target Operation(1..Unbounded) .
    3. Used same Operation mapping in Interface Determination with 0..unbounded(Multiplicity).

  • Problem in Idoc to JDBC scenario(uses BPM)

    Hi
    I have a IDoc to JDBC scenario which also uses BPM.
    The JDBC adapter has to execute a Stored procedure on Sybase database.
    I work on XI3.0 SP14.
    When I am sending IDoc to XI it is failing in CALL adapter step.
    The error message is "Unable to convert sender service TruckLiftAccountUpdate to an ALE logical system".
    However this scenario is working in Production with same settings.But it is not working in Quality and it is giving the above error.
    Can any one help me in this.
    Thanks in advance.
    KP

    Thanks for your quick reply..
    All the settings are in place.
    Here the Idoc is coming to BPM and BPM cant able to execute the stored procedure.and we are getting the error from BPM to target system.
    Here error is unable to convert the sender service(from BPM service) to ALE
    logical system.
    same settings are there in Production but it is not working in QA.
    Thanks in adavnce,
    KP

  • Collect Multiple IDOC(Single IDOC type) to single file using BPM

    Hi All,
    When i am generating multiple IDOC for the same message type, i am getting multiple payload for the same as a result i used to get multiple files generated in application server.
    Now if i use BPM only to collect multiple IDOC to a file then what all the steps that i need to follow for the same.
    Ex: I want to post 10 IDOC for a single IDOC type,, Now using BPM in XI i want to collect all the 10 IDOCs with multiple payload into one single message and then want to process this in XI to generate the file.
    It would be glad if anyone refer me a good step by step blog for the same.
    Thanks in advance,
    Jay

    Thanks a lot Abhisek.
      I have also got a blog explaining the exact thing. But in the blog the ID part was missing which is present in the link you have provided.
    I will be glad if you can through some light on the ID part,, however the IR part and the BPM part is now mostly okay to me.
    I will configure this today only,, and may seek your help for any huddle.
    Thanks a lot once again.
    Regards,
    Jay.

Maybe you are looking for

  • Limewire/Azurius Java problem.

    Now the above 2 programs require java 1.5... The problem that i have is that after 10 to 15mins of downloading anything using the above 2 programs... my computer and the net freezes..... first the the download speed goes down to 0kbps........ then if

  • How to sync purchased app from laptop to ipad?

    when i connect ipad to laptop i can sync my apps in my ipad to my laptop, but if i downloaded apps on my laptop, and i want to transfer them into my ipad, how to sync rather than dragging them into ipad manually?

  • Making a playlist...

    Is there a way to make a playlist from the songs currently stored on my ipod? I loaded the songs manually from my library without using any playlists (I dragged each song directly to ipod). Now, I regret doing it that way because I like the song sele

  • AF:Query  Reset when mode changes from Advanced to Basic

    Hi, Can you please suggest how i can reset the af:query when i toggle from Advanced to Basic. The Problem is : User goes to Advanced tab and selects "NOT IN" and searches for the data.. Now he switch backs to Basic Mode.. though it doesn't show the "

  • ZLM Secondary

    We're about to deploy a secondary server in our Management zone, but I have a question about managed devices. Once we deploy the secondary server does ZLM manage the "load balancing" of those devices (similar to how ZCM works when you add another Pri