BPM Transformation

I have read some where that, AVOID Transformation in the BPM and this could be carried outside the BPM.
Would you please explain that? If there is any Specific blog available for this?
Thanks.

Inside the BPM
Step 1(Receive) : receive step from an RFC(Async)
Step 2(Send) :  Synchronous Send Step to an URL.
Step 3(Transformation) :   Response from Step 2 will be used in the Transformation step to build the next Request
Step 4( Send) : Synchronous Send step to URLII.
Step 5 (Send) :  Send the Response back to the R/3(Async, IDOC)
So now tell me do you think its feasible for me to remove the Transformation step (i.e step 3) in the BPM to place that outside the BPM?
Thanks.

Similar Messages

  • Handling Java Mapping Exception in BPM Transformation step

    Dear SDN members,
    I have developed a File to File scenario using BPM as follows.
    Step 1:
    Sender file adapter picks the file from FTP server and using file content conversion mapped to XML structure.
    Step 2:
    BPM will recieve the XML payload , immediately in the block a transformation step is called with an interface mapping. In the interface mapping a Java mapping will be executed with certain data validations on the XML payload. If found any invalid data is there a suitable excptions will be raised . Here the transformation step should be catch the error and control should be sent to exception block to place the recived file as a error file.
    else if the transformation is executed with out any issues, the file will be placed in success folder.
    But in the transformation step, though java mapping thorwing exceptions, the control not going into exception block, instead it is continuing to next step i.e the file is placing in the success folder.
    Can anybody tell me, how to handle the exceptions raised in java mapping in the BPM transformation step?
    I have refered all the SDN blogs, forums related to this issue, but could not able to find the answer. Please help me?
    Thanks & Regards
    Vijayanand Poreddy

    Hi Abhishek,
    Once the file is picked from FTP server then sent to BPM,
    the BPM steps
    Step1:
    -->Recive
    Step 2:
    Block Starts
       ---Block Start: New Transaction
       ---Block End : New Transaction
       ---Exception : Error
    Step 3 
    Inside the Block
    Transformation Step
       --Interface Mapping: <IM Name>
       -- Check box ticked for Create New Transcation
       -- Exceptions
          --System Error: Error
       --Source Message: Message recieved in Recieve Step (Step 1)
    Step 4:
      --Send
      --Source Maessage: Output message from the Transformation Step
    Block End
    Inserted a Exception Branch for Block
    Steps inside Exception Branch
      -Control
        --Throw Alert
       --Alert Name
    In the above scenario
    The transformation step is not throwing error even my interface mapping going to error. The same transformation step if i place outside the block next to recieve step, then the transformation step is throwing error and BPM stops the process.
    Also, when transformation is inside the block, i have used the exception handling on the send step inside the block. here it is throwing error as the source message payload is empty. because in the preceding transformation step the interface mapping is failed due to which there the target will not be filled. But even though it is not entered into exception block.
    Regards
    Vijayanand Poreddy

  • Stuck in BPM Transformation process Async to Sync Scenario

    Hi there im building up a   R/3 ---> Idoc PI -
    >Soap  3rd Party   Async/Sync Scenario,
    on the integration process window i drag a transformation box to change my input idoc to the structure the Webservice needs, but i cant import it, i tried to make a new one using the abstract interfaces im using but it tells me i cant transform an Async Interface ( Idoc ) to an Sync Interface ( Webservice ), any sugestions?, i can provide everything i have done up to date regarding interfaces mappings and stuff if needed, thx!!!,
    Roberto.

    but it tells me i cant transform an Async Interface ( Idoc ) to an Sync Interface ( Webservice ), any sugestions
    You cannot perform a mapping between an Async MI and a Sync MI....not only for a BPM but even in general
    Your BPM should have below steps:
    Receive(IDOC)-> Transformation(IDOC_to_SOAPReq...both Async)-> SyncSend(SOAPReq and SOAPResp Messages)
    You need below Container elements in your BPM:
    1 for receiving the IDOC
    1 for the SOAPReq message
    1 for the SOAPResp message
    You cannot have a Container element for Sync Interface.....you include the ABS Sync MI directly in the SyncSend step and then will get Request and Response fields (automatically)....here specify the SOAPReq and SOAPResp Container elements.......
    Your Interface Mapping will be between MI_IDOC_ABS and MI_SOAPReq_ABS......and then you can inlcude this in the Transformation step
    Just a question to ask....what are you going to do once you receive the SOAPResp message?
    Regards,
    Abhishek.

  • Alert for BPM Transformation Step

    Hi I am trying to think of a way to get the information from my alert transformation step into my Alert Message.
    The scenario is a multiline container called XML_Collect mapping to XML_Output a single container with the XML messages merged.
    If I encounter an error with mapping, currently I am raising an Alert with Process <Process ID> and Long Text Transformation Failure.
    I have the Transform step in a Block and an exception branch for the Alert. I am going to instigate a Container Operation step to fill my Container variables with information about the error.
    In the BPM Workflow Log I can see the Transformation1 Container Instance with variables such a MAPPING and MESSAGES_IN and _EXCEPTIONS in it.
    Can I reference this container in my Container Operation.
    Ideally I would like to know which XML message from the multiline container generated the mapping error. This would help in correcting.
    I have read some information on a UDF calling Alerts but I am not sure if this is the method to use.
    thanks,

    It is MESSAGES_IN
    We have
    MAPPING MAPPING http://<company>.com/msghdr IM_T_MSGHDR_V3_to_T_MSGHDR_V3_Multi-<...>-1-
    TRACE <?xml version="1.0" encoding="utf-8" ?>
    <MappingTrace><Trace level="1" type="T">Mapping-Namespace:http://company.com/msghdr </Trace>
    <Trace level="1" type="T">Mapping-Name:IM_T_MSGHDR_V3_to_T_MSGHDR_V3_Multi </Trace>
    <Trace level="1" type="T">Mapping- ...
    This trace is what appears in the XML trace also
    MESSAGES_IN MESSAGES_IN < 1 Entry >
      MESSAGES_IN[1] MESSAGES_IN[1] 0000000001-<...>
        NUMB Parameter ID 0000000001
        MESSAGES MESSAGES < 3 Entries >
    XC     ZXI_PROXY_MI_MSGHDR_V3_0001     E0630F307D7B11DCA23700145E6916E5
    XC     ZXI_PROXY_MI_MSGHDR_V3_0001     E035BDA07D7B11DCB90500145E6916E5
    XC     ZXI_PROXY_MI_MSGHDR_V3_0001     BA2A92307D7511DCB09900145E6916E5
    then the XML Header and Payload.
    _EXCEPTIONS _EXCEPTIONS < 3 Entries >
    _EXCEPTIONS[1] EXCEPTIONS[1] Component MAPPING has reported an error-The exception occurred (program: CLSW..
    _EXCEPTIONS[2] EXCEPTIONS[2] com/sap/xi/tf/MM_T_MSGHDR_V3_to_T_MSGHDR_V3_Mult~com.sap.aii.utilxi.misc.api...
    I have just tried the variable &_WORKITEM.WORKITEMID& and this gives the work item ID of the starting step for the Process.
    My MESSAGE_ID variable that I am updating with the container variable straight after the Transformation step has the first message id from the multiline container but I know this isn't my incorrect message.

  • BPM - Transformation Step

    In one of our BPM scenarios, while defining
    <b>Transformation</b> step.
    I have defined the interface mapping in IR. After refering the interface mapping from IR, the source and target messages are read from the interface mapping.
    the values for both source and target messages are empty.
    Should the values be given here or are they read during runtime.
    -Naveen.

    Hi Julio,
    BPM understands only abstract interface. So you will have to define a abstract interface for each message going into BPM and inbound interface going out of BPM.
    Also you can only declare asynchronous abstarct interface as the container elements. So no synchronous abstract interfaces can be defined as container element.
    So in your case you will need following interfaces:
    In case your scenario is IDOC -->  XI  -->  RFC.
    You will need:
    1) IDOC_Outbound_Aysnc
    2) IDOC_Abstract_Aync
    3) RFC_Inbound_Sync
    4) RFC_Abstract_Sync (This for sunchronous send to RFC system)
    5) RFC_Abstract_Request (This is to be used as target message in Interface mapping step in BPM)
    6) RFC-Abstract_Response
    In your transformation step the mapping would be between IDOC_Abstract_Aync and RFC_Abstract_Request  as only abstract asynchronous messages can be used in the scenario. Then the send sync will send the message sync to rfc system and the response can again be used further in BPM only in abs_async mode.
    Hope this helps.
    Regards,
    Ashish

  • BPM Transformation Step Failed

    Hi All,
    We have a scenerio-1 developed where we use the BPM. I have tranforted the Scenerio-1 from Development system to the QA system. The scenerio is based on FILE TO FILE using BPM. I have process the file after the transport and found that the scenerio works fine.
    Now, i have deleted one perticular MT/DT/ from scenerio-2  but this is used by the scenerio-1. Now i have reimport all the objects in Scenerio-2/Scenerio-1 and everything looks smiliar.
    Now when i am trying to process one file by Scenerio-1 the message process without performing the transformation steps.
    In BPM i have te following steps..
    1= Receive the messages.
    2= Loop to receive next message
    3= Append the messages in a container.
    4=Transform the message to three other messages.
        a. One with -ve items
        b. One with +ve items.
        c. one with control details.
    5= Send the messages through sends steps.
    Adding to the above condition, i have also cehcked the testing of MM at IR which is sucessful.
    NOW WHEN I AM TRYING TO PROCESS ONE FILE IT FAILED IN THE TRANSFORMATION STEP AND THE MESSAGE GET PROCESSED WITHOUT ANY BRANCHING..
    Can anyone guide me how can i check the exact error in the complete process.
    Thanks,
    Jay

    If your BPM is syntactically correct then you need to check the properties of each step in the flow properly.
    As you mentioned that you have copied  objects ,pls make sure the name spaces are mentioned correctly.
    check your configuration also
    refer toublesooting guide if it helps
    http://wiki.sdn.sap.com/wiki/display/BPMT/BPMTroubleshootingGuide
    Regards,
    Srinivas

  • BPM Transformation Error not Raising Exceptions

    Hi,
    I've got a BPM receives a message, then call a transformation step and then send the message.  I've created exception branches for the transformation and send steps.  If the message mapping called in the transformation step works, the message is send, no problems.  If a message mapping exception occurs, for example a string index out of bounds, the exception branch is not executed.  Instead the BPM continues to the send step and an error occur because of the empty container element.(the container is empty because the mapping fails).  SAP Help states that an exception is "Thrown when a permanent system error occurs" in the Transformation step.  My question is what exactly is a permanent system error if normal message mapping exceptions is not a permanent system error?  And also, how do I generate a permanent system error when a message mapping exception is thrown in order for the exception branch in my BPM to execute?
    Any suggestions will be appreciated.

    I dont think there is a direct way to raise such error in mapping
    What is the sxi_cache status for ur integration process?
    Here r the steps for which permanent error is thrown
    http://help.sap.com/saphelp_nw04s/helpdata/en/33/4a773f12f14a18e10000000a114084/frameset.htm
    Regards,
    Prateek

  • Question on BPM Transformation for File- RFC- File

    Dear All,
    I did the scenario from a blog (  http://www.sap-xi.com/sap-xi-scenario-file-rfc-bpm.html  ) which is file->RFC->File with BPM. RFC call happening in BPM which is Sync and they are not using a transformation step anywhere in BPM. can you please explain me how mapping has been performed in BPM for this scenario.
    BPM Design:
    Start->Receive->Sync->Send->Stop
    Thanks & Regards,
    Manikandan

    Suprised to see this from you raja..
    to better the performance of a BPM it is recommended to keep all the mappings in Interface Determination and not in BPM.....but in some cases it is required to have mappings within BPM.
    they are not using a transformation step anywhere in BPM
    Either mapping was not required or the same was included in Interface Determination.....it is not a compulsion to have a Transformation step.....i have not checked the blog but this should be the reason.
    Edited by: abhishek salvi on Feb 21, 2011 6:42 PM

  • BPM Transformation Question

    Hi all,
    i have a BPM where i have 2 subsequent Transformation Steps within one block with the following properties
    Step1:
    SourceMessage = aaa
    TargetMessage = zzz
    Step2:
    SourceMessage = bbb
    TargetMessage = zzz
    As i have the same target message in both steps, will the content set after the first transformation still be set after performing the second transformation ?
    Best regards,
    martin

    Hi,
    guess you have to do it in one transformation step like in this pattern:
    http://help.sap.com/saphelp_nw04/helpdata/en/0e/56373f7853494fe10000000a114084/frameset.htm
    Regards
    Patrick

  • BPM: Transformation Error with Interfaces/ MT's in different namespaces

    Hi all,
    Developing an integration process on XI 3.0 SP20 I'm facing following problem:
    I've created a transformation mapping interfaces/ message types from different software components/ namespaces.
    Softwarecomp. 1 is used for the mappings and integration processes
    Softwarecomp. 2 and 3 are used for the interfaces/ message types for incoming and outgoing messages.
    Softwarecomp. 2 and 3 are assigned to Softwarecomp. 1.
    The error message is that the container types do not fit the types of source- and target messages.
    When I copy all objects in Softwarecomp. 1 everything works fine but I don't want to mix it all up.
    I've tried playing with XML-Namespaces in the message types (same XML-NS, like "test" for both MT's, also removing the XML-NS's) but it still doesn't work.
    How can I realise a transformation with objects from different SC's and NS's?
    Thanks in advance!
    Karsten

    I've created another integration process with simple example messages and it really seems to be impossible to do a transformation with message types from different software components.
    I've seen a transformation where they have done it though.
    What did I overlook??

  • BPM transformation multiline problem

    I have a transformation in an Integration Process. My Source Messages field points to a Multiline container element CollectDeliveries. My Target Messages field points to a non-multiline element SendShipment.
    When I check the Integration Process, I get a red frame around the Source Message field stating that:
    Expression must not return a multiline value.
    If I remove the Multiline checkbox value of the CollectDeliveries container, the error disappears, but my CollectDeliveries container contains multiple Deliveries, so it is conceptually correct.
    What could be going wrong here? Any clues?
    Kind Regards,
    Tony.

    Anthony,
    Check for your Interface mapping. It also must be Source 0..Unbounded and target 1..1.
    raj.

  • BPM n:1 transformation

    Hello Experts,
    I'm doing a IDOC-to-File scenario using BPM. I have many Transformation steps which uses different mappings. In the end i have a mapping which merges all the messages into one.
    I have created two receiver determinations in the configuration and two interface determinations. But i do not get any of my maps when I go to select the interface mapping in the Interface determination.
    Can anyone give me links to follow N:1 mapping or tell me what exactly i have to do.
    Thanks and regards,
    Akhil

    Hi Akhil.
    I am not getting your exact problem. May I kindly request you to explain in more details.
    If I am not wrong I think I know you very well, you was working on Mobile Infrastructre. Its long time that I saw your posts and that is also in XI...surprising...
    Anyways the answer given by Raj is absolutly right as you can have Interface determoination or Receiver Determintaion without mapping. Use the mapping in BPM transformation step and then process the IDOC.
    Thanks
    Swarup
    Edited by: Swarup Sawant on Mar 3, 2008 5:12 PM

  • ** Transformation step - 1:n mapping error - BPM

    Hi friends,
    In my BPM transformation step I am doing 1:n mapping. I created & tested the message mapping and Interface mapping for this. Its working fine there. But, while I put the payload, the message is not splitted. Instead only the first message is splitted.
    Source Payload
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:PurchaseOrder xmlns:ns0="http://www.XYZ.com/ABCD/SDFunctions">
    <row>
    <PONO>5005</PONO>
    <PODATE>2008-06-09</PODATE>
    <VENDOR_CODE>0000100614</VENDOR_CODE>
    <REFERENCE>PENA</REFERENCE>
    <MATERIAL_CODE>100-00</MATERIAL_CODE>
    <ORDER_QTY>1</ORDER_QTY>
    </row>
    <row>
    <PONO>5006</PONO>
    <PODATE>2008-06-09</PODATE>
    <VENDOR_CODE>0000100614</VENDOR_CODE>
    <REFERENCE>PENA-1</REFERENCE>
    <MATERIAL_CODE>100-100</MATERIAL_CODE>
    <ORDER_QTY>4</ORDER_QTY>
    </row>
    </ns0:PurchaseOrder>
    But, only the message is splitted comes in SXMB_MONI with the following error.
    HTTP response contains status code 500 with the description Timeout Error while sending by HTTP (error code: 500, error text: Timeout)</
    What could be the problem ? Why second message is not splitted. Is it required to add any Receiver Determination step in ID ?
    Kindly tell me, friends.
    Thanking you.
    Kind Regards,
    Jeg P.

    Hi friends,
    I have corrected Message Mapping and Interface Mapping. If I send 2 message (source), I will get only 1 message in the target side. (after transformation)
    In my BPM design, after 'Transformation' step, one block is there, I set property Mode as 'For Each', and I set Multiline Element.
    Now, the 500 Internal Server problem has gone. But, why the 2nd message is not entered into block ?

  • Mulitple Message Transformation BPM Problem

    I am getting a map failure exception because of the following reason (see below) and am not sure what to do about it. 
    I am a BPM process and have a received a populated Request Message, mapped the Request Data into a Bapi request (via BPM Transformation), Synchronously called the Bapi (via BPM Send), and next mapped the data from the Bapi Response and Original Request into a single Response message (2 messages into 1 message).  I am getting a map failure when I am sending the two messages (Bapi Response and Original Request) into the Map process.  It appears as the original Request data is lost (populated data is gone)and this is why the map is failing.  I have tested the map independently and have no problems.  Any suggestions?

    Hi Manoj,
    Have you entered the correlation correctly.. (the condition for collecting IDOCS, a primary key in most cases)
    When u r collecting Idoc Debmas, ( Customer Master i believe), u should have the mappings as IDOC XSD to IDOC and then IDOC to txt conversion..  Am I right ?
    inbound interface: target structure (txt)
    outbound interface : idoc
    abstract interface : for collecting multiple  idocs..
    mappings would be like this :
    IDOC to IDOC XSD and
    IDOC XSD to Txt structure .
    Things to look out for while developing the interface:
    Occurences and BPM data, like selecting multiline and defining correlation.
    You should recheck the container for any discrepancies.
    I am sending you two links (as there's some information missing, to identify your problem)
    IDOCs (Multiple Types) Collection in BPM by Pooja Pandey:
    /people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm
    and Collecting IDocs without using BPM by Stefan Grube:
    /people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm
    Check the first one, You will get some idea, where there might be a problem.
    You can also do the same without using BPM as Stefan has so elaborately explained.
    Alternatively, you can also refer to this URL :
    www saptechnical com/Tutorials/XI/CollectMultipleIDocs/Collect1.htm
    Happy Developing..
    regards,
    Abhi..
    Edited by: Abhisek on May 10, 2009 12:26 AM
    Edited by: Abhisek on May 10, 2009 12:29 AM

  • File - BPM (RFC) - Mail Scenario

    My scenario is File to Mail scenario thru BPM. in BPM I need to make RFC Call. I set ASMA in File sender adapter and File Nmae is not accessible in BPM Mapping. we are PI7.0 SP12. Im sure this is possible but for some reason not working. Any clue ?

    Hi,
    >>So Q1: Im not getting Filename into BPM though I checked ASMA in the Sender File Adapter
    You cannot take the filename (using Dynamic Configuration) in Message Mapping inside BPM transformation step. So I will propose to take it before entering into BPM.
    >>Q2: I need to send attachment name as Dynamic which I should get from the Input Message. we are on PI7.0 SP12.
    Check the blogs in sdn, you will get more idea on this. If I get any I will reply back
    Regards
    Suraj

Maybe you are looking for

  • Security issues for Java server side code

    When reading the Oracle 8i documentation regarding using JDBC with Java running within the database, I found that the Oracle- specific call 'defaultConnection()' can be used instead of the standard 'getConnection()'. This appears to be what I want to

  • Color management needed

    hi LR team, thanks for your great contribution! I found there is no color management in LR. It's not easy to adjust photos between LR and PS if using a color scheme other than default sRGB. One pic has different looks... So, I think it's helpful to a

  • Screen HDV Movie

    I am a volunteer who has been given a 10 minute QT movie (and project file), shot by someone else in HDV on a Canon XH-AI. It's my responsibility to make arrangements to present this at an event to an audience of roughly 120-150. Although I'm reasona

  • Home sharing photos - keeping folder structure

    Hi, I am sharing my photos from my Windows 7 PC to my Apple TV (latest model). Is there a way to keep my folder structure? I have over 17 000 photos sorted into folders, and having them all listed on a single screen is simply ridiculous. Surely I can

  • Selecting color layer should select its mask

    In older versions of Photoshop (at least until CS3), clicking on a solid color, gradient or pattern layer in the layer palette selected its mask. In CS5, it doesn't select the mask anymore. This is inconsistent with the adjustment layer behavior, whe