Bank example using BPM

Hi,
I am testing a scenario in which when ever i do some transaction the details must be updated in the table(The amount credited or debited) as well an alert must be raised to his mail or mobile giving the details of this perticular transaction
Please let me know this step by step like what function module to be used for this,the code required,alertconfiguration etc.
I will reward points if found useful.
Please reply asap.
Thanks,
Srinivasa

Hi Srinivas,
1.You need to create an Alert Category by using transaction ALRTCATDEF.
  In this transaction you can create a container variable for holding details of your  
  transaction.You can also specify your user id in fixed recipient if you wish to
  recieve mails in your alert inbox configured on your name(userid).
2.Then you can raise an alert by calling function module SALERT_CREATE.
Regards,
Shweta Shetty.

Similar Messages

  • 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

  • Message Spiltting Without Using BPM in XI-7.0

    We are using XI-7.0.
    We need to spilt the message from 1 to many without using BPM based on following conditions.
    We need to spilt the one message in many messages depending on the segment records of ZORDER3 and ZORDER2.
    If IDOC message do not have segment ZORDER3 then message needs to be spilt based on the segment records of ZORDER2.
    In the following example, one IDOC message would come from SAP system and that message needs to spilt into 7 messages for the vendor's system.
    Any help will be appreciated.
    <u>Source message: IDOC-ZORDER</u>
    <i>Segment:ZORDER1(Max occ-1)
    PO:4600000010
    LineItem:00010
    Plant:5000
               Segment:ZORDER2(Max occ-999)
               ServiceCode-100000
                              Segment:ZORDER3(Max occ-99)
                              CostCenter:CC123456789
                              CostDesc:CCTest1
                              CocstCenter:CC23456795
                              CostDesc:CCTest2
                               WBSElement:WBS45698712
                               CostDesc:WBSTest1
                               WOrderNo:WO56987412
                               CostDesc:WOTest1
              ServiceCode-200000
                              Segment:ZORDER3(Max occ-99)
                              CocstCenter:CC78956795
                              CostDesc:CCTest7
                               WBSElement:WBS492871
                               CostDesc:WBSTest5
                               WOrderNo:WO98757412
                               CostDesc:WOTest6
    <u>Target Message Structure</u>
    POData(1:1)
              Level1(1:1)
              PO&LineItemNo:460000001000010
              Plant:5000
              ServiceCode-100000
              Level2(1:1)
              costobjectID:CC123456789
              costobjectDesc:CCTest1</i>Thanks in advance!
    MP

    Mrudula,
    If you give the target structure and occurrences of it , then it will be more helpful. Also please quote on wht basis the message needs to be splitted, coz the condition is not clear, Please give the condition too.
    Best regards,
    raj.

  • 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.

  • Message mapping when using BPM?

    We are doing a test to see if you can do a split of a string using standard functions, UDF or BPM.
    We discovered that standard function has some of the functionality but if you are going to solve the problem that way the solution will be very complex. You will get no flexi bility in how to design the string and all the feilds will have to have fix length. So Standard functions are not the solution for us.
    UDF works realy great. Write your java function and map it and everything are running.
    We wont to test BPM as well. and i just started to look at it and how to solve it. I'm a newbee on BPM and for start I'm wondering how the message mapping should look to use in the BPM?
    Sourcemessage looks as follow:
    <Header>
       <Line>  
          <SegmentA>   0 to unbounded
          <SegmentB>   0 to unbounded
          <SegmentC>   0 to unbounded
    SegmentA contains a value to be copied to a segment in the target.
    SegmentB contains a date to be copied to a targetelement.
    SegmentC contains a string that we want to split into several elements in the target structure.
    Targetmessage looks as follow:
    <Header>
       <LineA>   1 to 1   (Will get the value from SegmentA in the sourcemessage.)
       <LineB>   1 to 1   (Will get the value from SegmentB in the sourcemessage.)
       <LineC>   0 to unbounded
          <ElementA>   0 to 1   (Will get a part of the string from SegmentC in the sourcemessage.)
          <ElementB>   0 to 1   (Will get a part of the string from SegmentC in the sourcemessage.)
          <ElementC>   0 to 1   (Will get a part of the string from SegmentC in the sourcemessage.)
    To able to get the messages into BPM I need a interfacemapping and to do the interfacemapping I need to do a messagemapping. How should that messagemapping be configured?

    > Now i want to try to replace that UDF with a BPM (Integration Process).
    An UDF is part of a mapping and an Integration Process is used if you want to realize a more complex scenario then sending a message from System A to System B. In BPM you can do things like collecting messages, use timeouts, ...
    But if you want to use a mapping in a BPM you define your mapping in your Integration Repository (like in a standard scenario without BPM) and then you can use the mapping in the Integration Process.
    That's why i say it's maybe possible to realize your mapping without UDF (for example only with standard functions), but it makes no difference if you use BPM.
    If you want to try finding a solution without UDF, i would suggest to open a new thread for this question.
    Hope this helps.
    Regards
    Patrick

  • How to handle system errors in XI using BPM? please help!

    Hi Experts,
         I have a requirement where I have to handle system errors. For example when I am making RFC call using RFC adapter if the remote destination is down then I have create a understandable error message and store it in another SAP table.
    How to handle it? I am using BPM. I can see that there is "Exceptions" in the send step. How to use this?
    Thanks
    Gopal

    Hi Gopalkrishna,
    In this case whenever you get Mapping Exception , you can raise an Exception with the help of BPM and you can send the status to the RFC. But with the help of BPM.
    For a Simple case refer:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/33/4a773f12f14a18e10000000a114084/frameset.htm
    If you want you can do it without a BPM
    and throw an exception in case any of the values is missing:
    have a look at this weblog on how to throw exceptions
    in a nice way:
    /people/alessandro.guarneri/blog/2006/01/26/throwing-smart-exceptions-in-xi-graphical-mapping
    Also just go through <a href="/people/sap.user72/blog/2005/02/23/raising-exceptions-in-sap-xi-mapping Exceptions in SAP XI Mapping</a> and see if it helps you solve the problem.
    Also go through these links:
    http://help.sap.com/saphelp_nw04/helpdata/en/dc/6b7f2243d711d1893e0000e8323c4f/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/68/253239bd1fa74ee10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/f2bbc8142c11d3b93a0000e8353423/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/5d/2166e6a91d11d188de0000e8216438/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/05/bb223905b61b0ae10000000a11402f/content.htm
    Please do let know if it helped.
    Regards,
    Abhy

  • File-To-RFC without using BPM

    hey guys
    is a File-To-RFC scenario possible without using BPM? i have gone through the blog by Arpit Seth ( /people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit ) but it uses BPM.
    i am new to XI and not very comfortable with BPM.
    please let me know if BPM is the only way out or are there some other methods too.
    Also under what circumstances one should use BPM?
    thanx in advance.
    aamir suhail

    Hi,
    it's a standard non BPM scenario
    (you can find many weblogs like this)
    the only different thing is the RFC signature import
    (inside repository)
    and the use of different channels (file and RFC)
    you can find many examples in my XI FAQ
    (document section)
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Doc on Async and Sync using BPM

    Hi all
    Can anyone send some docs explaining the steps involved in bridging async and sync interface using BPM. The source adapter is JDBC and target is proxy. I've already checked one blog by krishna moorthy (File-File using BPM) and based on that i tried but coudnt get the expected result for my scenario.
    Thkx

    Hi PS,
    in your Integration Repository go to:
    Software Component: SAP BASIS
    Namespace: http://sap.com/xi/XI/System/Patterns
    Process: BpmPatternSyncAsyncBridge
    This is a very good example!
    Regards Mario

  • Merging two files using BPM

    Hello frens,
    I have to do a scenario which will merge to files into one file using BPM....
    Means for example :
    File 1 contains these fields:
    First Name
    Last Name
    File 2 :
    First Name
    Last Name
    The output File which I required is :
    First Name
    Last Name
    First Name
    Last Name
    Can anyone send me the step by step procedure fr this scenario?
    Thanks in advance

    HI go through these links,
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    http://help.sap.com/saphelp_nw04/helpdata/en/3c/831620a4f1044dba38b370f77835cc/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/62/dcef46dae42142911c8f14ca7a7c39/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cb/15163ff8519a06e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
    Many other examples can be found under the following link at help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
    And some weblogs
    https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    /people/siva.maranani/blog/2005/05/22/schedule-your-bpm *****
    /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    /people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
    /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/udo.martens/blog/2005/09/30/one-logical-system-name-for-serveral-bpm-acknowledgements *****
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/kannan.kailas/blog/2005/12/07/posting-multiple-idocs-with-acknowledgement
    Also have a look at these seminars,
    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
    go through these links,
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    http://help.sap.com/saphelp_nw04/helpdata/en/3c/831620a4f1044dba38b370f77835cc/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/62/dcef46dae42142911c8f14ca7a7c39/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cb/15163ff8519a06e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
    Many other examples can be found under the following link at help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
    And some weblogs
    https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    /people/siva.maranani/blog/2005/05/22/schedule-your-bpm *****
    /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    /people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
    /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/udo.martens/blog/2005/09/30/one-logical-system-name-for-serveral-bpm-acknowledgements *****
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/kannan.kailas/blog/2005/12/07/posting-multiple-idocs-with-acknowledgement
    Also have a look at these seminars,
    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
    go through these links,
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    http://help.sap.com/saphelp_nw04/helpdata/en/3c/831620a4f1044dba38b370f77835cc/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/62/dcef46dae42142911c8f14ca7a7c39/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cb/15163ff8519a06e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
    Many other examples can be found under the following link at help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
    And some weblogs
    https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    /people/siva.maranani/blog/2005/05/22/schedule-your-bpm *****
    /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    /people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
    /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/udo.martens/blog/2005/09/30/one-logical-system-name-for-serveral-bpm-acknowledgements *****
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/kannan.kailas/blog/2005/12/07/posting-multiple-idocs-with-acknowledgement
    Also have a look at these seminars,
    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
    Note: reward points if solution found helpfull
    Regards
    Chandrakanth.k

  • Error handling using BPM

    hi all
           I would like to do an error handling scenario using BPM in XI. As i haven't done it before, can somebody give me links to good blogs and materials in this regards.
    Thanks
    Sumayya

    HI,
    Check the below links
    monitoring BPm https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e7bc3a5a-0501-0010-1095-eb47159e169c
    Reconciliation of Messages in BPM - /people/krishna.moorthyp/blog/2006/04/08/reconciliation-of-messages-in-bpm
    Also see the below BPM related links
    check list for BPM https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3bf550d4-0201-0010-b2ae-8569d193124e
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    http://help.sap.com/saphelp_nw04/helpdata/en/3c/831620a4f1044dba38b370f77835cc/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/62/dcef46dae42142911c8f14ca7a7c39/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cb/15163ff8519a06e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
    Many other examples can be found under the following link at help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
    And some weblogs
    https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    /people/siva.maranani/blog/2005/05/22/schedule-your-bpm *****
    /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    /people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
    /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/udo.martens/blog/2005/09/30/one-logical-system-name-for-serveral-bpm-acknowledgements *****
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/kannan.kailas/blog/2005/12/07/posting-multiple-idocs-with-acknowledgement
    Also have a look at these seminars,
    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
    Chilla

  • Send multiple records to rfc without using BPM

    Dear Experts,
    Could you please help on the following scenario.
    I need to send multiple customer master data records from a file  to rfc without using BPM.
    The following is the mapping i am using
    source                                                 Target( RFC)
    ======                                          =============
    Tree             occurance   type           Tree occurance              
    cust_mt        1..1        
       customer     0..unbound -
    >          ztest_cust( rfc )  1..1
          cname     1..1             -
    >            cname   0..1
          cno          1..1            -
    >            cno       0..1
           bank           -
    >            bank    0..1
                                                                    item :  0..unbound
             code      -
    >                                   code   0..1
             name     -
    >                                    name  0..1
             location   -
    >                                      location 0..1
    1. Multiple banks possible for one customer
    2. Multiple customers possible in datafile from mdm
    Problem 1:Only one customer record from file is being sent to RFC thouth many records are in the file, the second, third .. and so on records not being sent to rfc.
    Problem 2:
      if add o.. unbound for the rfc occurance, <messages>,<message1> tags are getting added in message mapping, and no single customer record sent to rfc..
    Your help is rewarded with good points.
    Appreciate your help.
    Thanks.
    sravya.

    Hi VJ,
    Thank you for the immediate reply.
    one more thing, when i tried to change the occurences of   ztest_cust( rfc) to 0..unbound,
    I am not seeing the occurances updated in the imported rfc structure.
    The following is the wsdl for rfc, could you please help me to add occurances 0..unbound.
    Thanks a lot.
    sraya.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:rfc="urn:sap-com:document:sap:rfc:functions" name="ZTEST_CUST" targetNamespace="urn:sap-com:document:sap:rfc:functions">
         <wsdl:documentation>
         test for mdm
         </wsdl:documentation>
         <wsdl:types>
              <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap-com:document:sap:rfc:functions" targetNamespace="urn:sap-com:document:sap:rfc:functions">
                   <xsd:element name="ZTEST_CUST">
                        <xsd:complexType>
                             <xsd:all>
                                  <xsd:element name="CNAME" minOccurs="0">
                                       <xsd:simpleType>
                                            <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                            </xsd:restriction>
                                       </xsd:simpleType>
                                  </xsd:element>
                                  <xsd:element name="CNO" minOccurs="0">
                                       <xsd:simpleType>
                                            <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                            </xsd:restriction>
                                       </xsd:simpleType>
                                  </xsd:element>
                                  <xsd:element name="BANK" minOccurs="0">
                                       <xsd:complexType>
                                            <xsd:sequence>
                                                 <xsd:element name="item" type="ZST_CUST" minOccurs="0" maxOccurs="unbounded" />
                                            </xsd:sequence>
                                       </xsd:complexType>
                                  </xsd:element>
                             </xsd:all>
                        </xsd:complexType>
                   </xsd:element>
                   <xsd:element name="ZTEST_CUST.Response">
                        <xsd:complexType>
                             <xsd:all>
                                  <xsd:element name="BANK" minOccurs="0">
                                       <xsd:complexType>
                                            <xsd:sequence>
                                                 <xsd:element name="item" type="ZST_CUST" minOccurs="0" maxOccurs="unbounded" />
                                            </xsd:sequence>
                                       </xsd:complexType>
                                  </xsd:element>
                             </xsd:all>
                        </xsd:complexType>
                   </xsd:element>
                   <xsd:complexType name="ZST_CUST">
                        <xsd:sequence>
                             <xsd:element name="CODE" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="60" />
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="NAME" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="60" />
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="LOCATION" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="60" />
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                        </xsd:sequence>
                   </xsd:complexType>
              </xsd:schema>
         </wsdl:types>
         <wsdl:message name="ZTEST_CUST.Input">
              <wsdl:part name="parameters" element="rfc:ZTEST_CUST" />
         </wsdl:message>
         <wsdl:message name="ZTEST_CUST.Output">
              <wsdl:part name="parameters" element="rfc:ZTEST_CUST.Response" />
         </wsdl:message>
         <wsdl:portType name="ZTEST_CUST.PortType">
              <wsdl:operation name="ZTEST_CUST">
                   <wsdl:input message="rfc:ZTEST_CUST.Input" />
                   <wsdl:output message="rfc:ZTEST_CUST.Output" />
              </wsdl:operation>
         </wsdl:portType>
         <wsdl:binding name="ZTEST_CUST.SAPBinding" type="rfc:ZTEST_CUST.PortType">
              <rfc:binding style="rfc" />
              <rfc:type name="ZST_CUST">
                   <ifr:container xmlns:ifr="urn:sap-com:ifr:v2:metamodel" xmlns:xlink="http://www.w3.org/1999/xlink">
                        <ifr:descriptor>
                             <ifr:description language="EN">
                             test
                             </ifr:description>
                        </ifr:descriptor>
                        <ifr:properties>
                             <ifr:sourceSystem />
                             <ifr:sourceClient>
                             020
                             </ifr:sourceClient>
                             <ifr:release>
                             640
                             </ifr:release>
                             <ifr:category>
                             structure
                             </ifr:category>
                             <ifr:unicode1>
                             true
                             </ifr:unicode1>
                             <ifr:unicode2>
                             true
                             </ifr:unicode2>
                             <ifr:isFlatStructure>
                             true
                             </ifr:isFlatStructure>
                        </ifr:properties>
                        <ifr:definition>
                             <ifr:internalLength1>
                             180
                             </ifr:internalLength1>
                             <ifr:internalLength2>
                             360
                             </ifr:internalLength2>
                             <ifr:fields>
                                  <ifr:field name="CODE" category="simple">
                                       <ifr:descriptor />
                                       <ifr:properties>
                                            <ifr:helpValuesSupported>
                                            false
                                            </ifr:helpValuesSupported>
                                            <ifr:offset1>
                                            0
                                            </ifr:offset1>
                                            <ifr:offset2>
                                            0
                                            </ifr:offset2>
                                       </ifr:properties>
                                       <ifr:definition>
                                            <ifr:scalarType>
                                                 <ifr:definition>
                                                      <ifr:type>
                                                      CHAR
                                                      </ifr:type>
                                                      <ifr:abapType>
                                                      C
                                                      </ifr:abapType>
                                                      <ifr:length>
                                                      60
                                                      </ifr:length>
                                                      <ifr:internalLength1>
                                                      60
                                                      </ifr:internalLength1>
                                                      <ifr:internalLength2>
                                                      120
                                                      </ifr:internalLength2>
                                                      <ifr:decimals>
                                                      0
                                                      </ifr:decimals>
                                                 </ifr:definition>
                                            </ifr:scalarType>
                                       </ifr:definition>
                                  </ifr:field>
                                  <ifr:field name="NAME" category="simple">
                                       <ifr:descriptor />
                                       <ifr:properties>
                                            <ifr:helpValuesSupported>
                                            false
                                            </ifr:helpValuesSupported>
                                            <ifr:offset1>
                                            60
                                            </ifr:offset1>
                                            <ifr:offset2>
                                            120
                                            </ifr:offset2>
                                       </ifr:properties>
                                       <ifr:definition>
                                            <ifr:scalarType>
                                                 <ifr:definition>
                                                      <ifr:type>
                                                      CHAR
                                                      </ifr:type>
                                                      <ifr:abapType>
                                                      C
                                                      </ifr:abapType>
                                                      <ifr:length>
                                                      60
                                                      </ifr:length>
                                                      <ifr:internalLength1>
                                                      60
                                                      </ifr:internalLength1>
                                                      <ifr:internalLength2>
                                                      120
                                                      </ifr:internalLength2>
                                                      <ifr:decimals>
                                                      0
                                                      </ifr:decimals>
                                                 </ifr:definition>
                                            </ifr:scalarType>
                                       </ifr:definition>
                                  </ifr:field>
                                  <ifr:field name="LOCATION" category="simple">
                                       <ifr:descriptor />
                                       <ifr:properties>
                                            <ifr:helpValuesSupported>
                                            false
                                            </ifr:helpValuesSupported>
                                            <ifr:offset1>
                                            120
                                            </ifr:offset1>
                                            <ifr:offset2>
                                            240
                                            </ifr:offset2>
                                       </ifr:properties>
                                       <ifr:definition>
                                            <ifr:scalarType>
                                                 <ifr:definition>
                                                      <ifr:type>
                                                      CHAR
                                                      </ifr:type>
                                                      <ifr:abapType>
                                                      C
                                                      </ifr:abapType>
                                                      <ifr:length>
                                                      60
                                                      </ifr:length>
                                                      <ifr:internalLength1>
                                                      60
                                                      </ifr:internalLength1>
                                                      <ifr:internalLength2>
                                                      120
                                                      </ifr:internalLength2>
                                                      <ifr:decimals>
                                                      0
                                                      </ifr:decimals>
                                                 </ifr:definition>
                                            </ifr:scalarType>
                                       </ifr:definition>
                                  </ifr:field>
                             </ifr:fields>
                        </ifr:definition>
                   </ifr:container>
              </rfc:type>
              <wsdl:operation name="ZTEST_CUST">
                   <ifr:container xmlns:ifr="urn:sap-com:ifr:v2:metamodel" xmlns:xlink="http://www.w3.org/1999/xlink">
                        <ifr:descriptor>
                             <ifr:description language="EN">
                             test for mdm
                             </ifr:description>
                        </ifr:descriptor>
                        <ifr:properties>
                             <ifr:sourceSystem />
                             <ifr:sourceClient>
                             020
                             </ifr:sourceClient>
                             <ifr:release>
                             640
                             </ifr:release>
                             <ifr:package>
                             $TMP
                             </ifr:package>
                             <ifr:akhNode />
                             <ifr:released>
                             external
                             </ifr:released>
                             <ifr:outbound>
                             false
                             </ifr:outbound>
                             <ifr:synchronous>
                             true
                             </ifr:synchronous>
                             <ifr:asynchronous>
                             false
                             </ifr:asynchronous>
                             <ifr:unicode1>
                             true
                             </ifr:unicode1>
                             <ifr:unicode2>
                             true
                             </ifr:unicode2>
                        </ifr:properties>
                        <ifr:definition>
                             <ifr:parameters>
                                  <ifr:parameter name="CNAME">
                                       <ifr:descriptor>
                                            <ifr:description language="EN">
                                            Character Field Length = 10
                                            </ifr:description>
                                       </ifr:descriptor>
                                       <ifr:definition>
                                            <ifr:scalarType name="CHAR10">
                                                 <ifr:properties>
                                                      <ifr:helpValuesSupported>
                                                      false
                                                      </ifr:helpValuesSupported>
                                                      <ifr:fixedValuesListDefined>
                                                      false
                                                      </ifr:fixedValuesListDefined>
                                                      <ifr:mixedCaseSupported>
                                                      false
                                                      </ifr:mixedCaseSupported>
                                                      <ifr:signedNumber>
                                                      false
                                                      </ifr:signedNumber>
                                                 </ifr:properties>
                                                 <ifr:definition>
                                                      <ifr:type>
                                                      CHAR
                                                      </ifr:type>
                                                      <ifr:abapType>
                                                      C
                                                      </ifr:abapType>
                                                      <ifr:length>
                                                      10
                                                      </ifr:length>
                                                      <ifr:internalLength1>
                                                      10
                                                      </ifr:internalLength1>
                                                      <ifr:internalLength2>
                                                      20
                                                      </ifr:internalLength2>
                                                      <ifr:decimals>
                                                      0
                                                      </ifr:decimals>
                                                      <ifr:outputLength>
                                                      10
                                                      </ifr:outputLength>
                                                 </ifr:definition>
                                            </ifr:scalarType>
                                       </ifr:definition>
                                       <ifr:properties>
                                            <ifr:direction>
                                            in
                                            </ifr:direction>
                                            <ifr:class>
                                            import
                                            </ifr:class>
                                            <ifr:type>
                                            scalar
                                            </ifr:type>
                                            <ifr:optional>
                                            true
                                            </ifr:optional>
                                            <ifr:basedOnDictionaryReference>
                                            true
                                            </ifr:basedOnDictionaryReference>
                                       </ifr:properties>
                                  </ifr:parameter>
                                  <ifr:parameter name="CNO">
                                       <ifr:descriptor>
                                            <ifr:description language="EN">
                                            Character Field Length = 10
                                            </ifr:description>
                                       </ifr:descriptor>
                                       <ifr:definition>
                                            <ifr:scalarType name="CHAR10">
                                                 <ifr:properties>
                                                      <ifr:helpValuesSupported>
                                                      false
                                                      </ifr:helpValuesSupported>
                                                      <ifr:fixedValuesListDefined>
                                                      false
                                                      </ifr:fixedValuesListDefined>
                                                      <ifr:mixedCaseSupported>
                                                      false
                                                      </ifr:mixedCaseSupported>
                                                      <ifr:signedNumber>
                                                      false
                                                      </ifr:signedNumber>
                                                 </ifr:properties>
                                                 <ifr:definition>
                                                      <ifr:type>
                                                      CHAR
                                                      </ifr:type>
                                                      <ifr:abapType>
                                                      C
                                                      </ifr:abapType>
                                                      <ifr:length>
                                                      10
                                                      </ifr:length>
                                                      <ifr:internalLength1>
                                                      10
                                                      </ifr:internalLength1>
                                                      <ifr:internalLength2>
                                                      20
                                                      </ifr:internalLength2>
                                                      <ifr:decimals>
                                                      0
                                                      </ifr:decimals>
                                                      <ifr:outputLength>
                                                      10
                                                      </ifr:outputLength>
                                                 </ifr:definition>
                                            </ifr:scalarType>
                                       </ifr:definition>
                                       <ifr:properties>
                                            <ifr:direction>
                                            in
                                            </ifr:direction>
                                            <ifr:class>
                                            import
                                            </ifr:class>
                                            <ifr:type>
                                            scalar
                                            </ifr:type>
                                            <ifr:optional>
                                            true
                                            </ifr:optional>
                                            <ifr:basedOnDictionaryReference>
                                            true
                                            </ifr:basedOnDictionaryReference>
                                       </ifr:properties>
                                  </ifr:parameter>
                                  <ifr:parameter name="BANK">
                                       <ifr:descriptor>
                                            <ifr:description language="EN">
                                            test bank type
                                            </ifr:description>
                                       </ifr:descriptor>
                                       <ifr:definition>
                                            <ifr:complexType xmlns:xlink="http://www.w3.org/1999/xlink" name="ZST_CUST" type="structure" xlink:role="type" xlink:href="/Content?TYPE=type&amp;NAME=ZST_CUST" />
                                       </ifr:definition>
                                       <ifr:properties>
                                            <ifr:direction>
                                            inout
                                            </ifr:direction>
                                            <ifr:class>
                                            tables
                                            </ifr:class>
                                            <ifr:type>
                                            structure
                                            </ifr:type>
                                            <ifr:optional>
                                            true
                                            </ifr:optional>
                                            <ifr:basedOnDictionaryReference>
                                            true
                                            </ifr:basedOnDictionaryReference>
                                       </ifr:properties>
                                  </ifr:parameter>
                             </ifr:parameters>
                        </ifr:definition>
                   </ifr:container>
              </wsdl:operation>
         </wsdl:binding>
    </wsdl:definitions>

  • Using BPM (Blocks) when Incoming message has multilple rows

    Hi All,
    I am using BPM in my scenario.I have a message with multiple rows coming.I want to check for a condition for each row of the incoming message.I am trying to use a block(Mode: For Each) and using a switch step inside this block.But in a block if u want to check for each line, we need to define a multiline container element as Source Interface message.Since I am already having multilple rows, I cannot give multiline option.Can someone give me some example scenarios where this type of scenarios are handled.
    Thanks in Advance.
    Soumya

    Hi,
    Here I am picking a file with multiple rows
    The Sender Message Type structure is
    <ns:File_MT xmlns:ns="http://File/send">
      <recordset>
        <Slno />
        <Goods_Receipt_Date />
        <Material_Code />
        <Quantity />
        <Plant_Code />
        <Storage_loc />
        <Batch_Number />
        <PO_Number />
        <Item_Number />
        <Special_Stock_Indicator />
      </recordset>
    </ns:File_MT>
    Here the row recordset has multiple occurences.
    For my BPM I have defined an Abstract Message Interface of similar structure.
    1)I am using a receive step to receive the message.
    2)I am using a transformation step for structure change.
    3)Then I have to check a condition whether each of the fields, ie material number,plant code etc are null or not.
    I am using a switch for that.In the switch I have 2 branches-for error records and correct records.
    Now in the eror record branch, I want to append error records to a container using a container operation and finally send it to another system.
    Since my Source message is already having multilple rows.ie 0...unbounded for recorset, I can't define a multiline for container operation.The container operation expects a multiline container element when using append statement.
    How should I go about this?Should I define a Loop after the transformation step?
    Can you give me any example scenarios where transformation steps are used to change a source message with mutilple rows are used?I referred the FlightBooking Example, http://sap.com/xi/XI/Demo/Agency-SplitMultiplebookingOrder but in that they are not using the MessageTypes which are already defined, in the mapping.
    Can anyone help?
    Thanks and Regards,
    Soumya.

  • When we will use BPM?.

    When we will use BPM in a scenario?.
    Why we use BPM?.
    If we can do same scenario without using BPM, is it better?.

    HI,
    Also see the below links to get more details regarding BPM
    check list for BPM https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3bf550d4-0201-0010-b2ae-8569d193124e
    monitoring BPm https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e7bc3a5a-0501-0010-1095-eb47159e169c
    /people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
    http://help.sap.com/saphelp_nw04/helpdata/en/3c/831620a4f1044dba38b370f77835cc/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/62/dcef46dae42142911c8f14ca7a7c39/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cb/15163ff8519a06e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
    Many other examples can be found under the following link at help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
    And some weblogs
    https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    /people/siva.maranani/blog/2005/05/22/schedule-your-bpm *****
    /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    /people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
    /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/udo.martens/blog/2005/09/30/one-logical-system-name-for-serveral-bpm-acknowledgements *****
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
    /people/kannan.kailas/blog/2005/12/07/posting-multiple-idocs-with-acknowledgement
    Also have a look at these seminars,
    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
    Chilal

  • 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

  • Upload attachment using BPM File Chooser in OBPM 10g

    Hi,
    I am currently working on OBPM 10g.
    Can anyone please help me with upload attachment using BPM File Chooser using BPM Presentation?????

    Do not use the existing Fuego.Ui.FileChooser component. This OOTB Oracle BPM component would work fine if you're trying to get a file from the server where the Engine is running, but will not work if you want a file from the end user client's machine.
    Take a look at a project I uploaded to http://www.4shared.com/file/aq-cY2qN/_2__FileChooserDemo.html
    It has both a JSP and a BPM Object presentation. The BPM Object presentation has a button called "Attach File", If you click in the presentation editor and then click the Properties tab you'll see that its "Name" property is "AttachFile" and the Action property is set to "submit". This means that it will return the text "AttachFile" in the result predefined variable in the screenflow. If you open the screenflow, you'll see the conditional transition from the "AttachmentViewerInteractive" to the "FileChooser" task. The name of this transition is "AttachFile". Because this was named "AttachFile", the logic behind this transition evaluates if "result ==AttachFile".
    Be careful with this example project. It will succeed when a small text or binary file < 100k is selected. It will go to the "File is too big" task in the screenflow shown below when the file > 100k. To make this maximum size limit larger, simply add a new line in your
    <Oracle BPM Enterprise Home Directory>\webapps\workspace\WEB-INF\workspace.properties file:
    # Max size of a file coming from a client machine (default is 100k)
    fuego.workspace.servlet.Attachment.MAX_ATTACHMENT_SIZE=2000000
    Once the file has been retrieved, do not store this as an instance variable unless it has been marked as a “Separated” instance variable.
    The “AttachView1.jsp” is invoked from the Interactive activity’s “FileChooser” task in the screenflow.
    Once the end user selects the file from the JSP, work flows to the “Add file” task. This is where you can retrieve the selected file’s:
    - Name: fileHolder.file_filename variable
    - Content type: fileHolder.file_content_type variable
    - Contents: fileHolder.file binary variable
    Dan

Maybe you are looking for

  • Oracle VM Manager 3.1.1 build 399

    Hi All, We've released the latest Oracle VM Manager 3.1.1 patch update (build 399) to My Oracle Support. See the download instructions at OTN. http://www.oracle.com/technetwork/server-storage/vm/downloads/index.html Download Oracle VM Manager 3.1.1 P

  • Add selection criteria to Billing due date list VF04

    Dear gurus, I need to execute report VF04  but looking sales documents by material. is there any enhacement point or user-exit to add this option to program? Thank in advance. Best regards Juan

  • Encore not available under Creative Cloud Desktop App

    Hi I have just purchased Premiere Pro CC 2014 as a single app and am trying to find how to get the option to show Premiere Pro CS6 so I can install that to get Encore Installed. I have followed the online docs on how to do this but can not see an opt

  • Flex View Rentals

    Why is Verizon advertising movies like The Karate Kid as being in both SD 480p and HD 720p but when purchased you only get SD letterboxed movies on HD sets.  While the SD format may be fine for 4:3 and other peripherals, its not so hot on a 16:9 tvs.

  • Adding a disclaimer to every vi in a project.

    I need to add a limited rights disclaimer to every vi in a project.  Is there a method to add the text in the documentation field to all the vi's in a project? Is there a better method to do this? Thanks. Solved! Go to Solution.