Transformation step exception

Hi,
I want to route message to one recieve if there is any error in transformation step.
If transformation is success then it must be routed another reciever.How can i achieve this.
Tried with exceptions but transfomration step handles only system errors and cancels message processing.
Thanks
--Pradeep

Hi,
Exception Handling can be used around Send Steps and Transformation Steps.
Use of Exception Handling is a very essential step inside your BPM and the best thing to do would be to wrap each of your Send / Transformation inside a Exception Handling block.
Michal's blogs : Very useful block
/people/michal.krawczyk2/blog/2005/09/09/xi-alerts--step-by-step /people/michal.krawczyk2/blog/2005/09/09/xi-alerts--troubleshooting-guide
You can use Moorthy's blog on Reocnilation as well as trigger alerts.
/people/krishna.moorthyp/blog/2006/04/08/reconciliation-of-messages-in-bpm
Please reward points if it helps
Thanks
Vikranth
Edited by: Khimavath Vikranth on Jun 12, 2008 10:09 AM

Similar Messages

  • Exception is not showing in transformation step in BPM after activating

    Hi ,
    I want to cancel the process if any mapping error occur in transformation step for that I designed by below steps.
    1.Block step ( mentioned exeption)
    2. transformation step ( Inside block mentioned block step exception)
    3. exception branc inside block
    4. contorl step (Cancel process inside exception branch)
    after activating the BPM , in transformation step exception is not showing .
    How to resolve this issue how
    Please help me
    Regards

    2. transformation step ( Inside block mentioned block step exception)
    Did you define the Exception Handler properly and also used the same in the Exception Branch? If you do a check in IR for your BPM (F7) do you get any error/ warning messages?
    Regards,
    Abhishek.

  • 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

  • Expression must return the interface type in Transformation Step in BPM

    hi,
    We are getting below while activating the IP,
    Expression must return the interface type SI_Send_AA
    Expression must return the interface type SI_Get_AA
    No semantic errors found
    We have a Transformation Step in BPM,
    In OM, Source is SI_Send_AA and Target is SI_Get_AA
    Also Container variable points to  the same Abstract SI's.
    Few Thread's for Same are error are:
    Error in  BPM
    expression must return the interface type
    Transformation step in ccBPM scenario
    Error while compiling Business Process
    Even after checking these i am getting this Exception.
    Please Help!
    Thanks,
    Mayank

    Also Container variable points to the same Abstract SI's
    Are you sure that you are using Abstract Message Interfaces only and that these are referring to relevant container variables.
    Normally it happens that there is some mis-match between the message types/ interfaces that we use in the mapping and that we use in the BPM.
    If still not solved, then delete the Transformation step --> save --> activate......then again Edit the BPM to include the Transformation Step.
    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.

  • Transformation step in Integration Process

    Hello Everybody,
    I have used a transformation step in Integration process to transform source structure to target structure. In the same block i have used control step to cancel the process if there is any error found in transformation. I am handling this by raising exception.
    Now my problem is, i found my message got failed in PE and it is showing that there is error in mapping, i took the copy of corresponding message from SXM_MONITOR and tested the mapping program, It executed successfully but the Integration process is showing that there is an error in mapaping.
    Please let me know your thoughts, urgent.
    Edited by: vijay thirumareddi on May 9, 2008 2:28 PM

    hi
    same mapping behaving differently !!
    make sure that in bpm u r using exactly the same message mapping.
    could be due to cache refresh problem. activate the message mapping again. also check the cache notifications.
    if it still do not works then do a full cache refresh.
    rgds
    arun

  • Not able to give multiline container variable in transformation step.

    Hello,
    I'm doing a simple collect pattern in BPM.
    I have three container variables, one- the source interface, second the multiline of source interface and third-the target interface.
    Now, i have block in which i have the exception and deadline steps and then a loop in which i have my receiver which collects the message and gives it to the container to keep it to the list. Outside the block i have my transformation step which takes the relevant interface mapping. When i try to give the multiline container variable the box turns red, but of give the normal source container variable it accepts it.
    If i do a check by F7, Expression must not return a multiline value.
    The scope of the container variables is maintained as Process.
    What could be wrong, please help.
    Thanks and regards,
    Akhil

    hi akhil,
    think in transformation it sees source messages and target messages.
    if u have n:1 scenario then n interfaces to one interface right
    thats is each interface will have one message type
    so if u are using interace mapping in transformation it is expecting n interface variables to one interface variable.
    it will display n source messages to one source message jsut check.
    so transformation step is expecting one n sub message types to be embedded in one message type
    <messages>
    <message 1>
    <meessage n>
    </messages>
    this one is mapped with one XML target messgae
    so if u have n different messages see that u compress them in to one message type like the above and give it in trasnformation step.
    if you have n different messages then u can alwasy go for n different interfaces to one single interface
    then u can see in tranformation step n diff source messages and one target message
    was just confused with reciever step which allows multiline receivers
    Thanks & Regards,
    Rama Krishna
    Edited by: rama krishna talluri on Mar 6, 2008 1:48 PM
    Edited by: rama krishna talluri on Mar 6, 2008 1:49 PM

  • Error in Transformation step of BPM

    Hi all,
    In BPM, I have defined a transformation step. For this, I have specified the Interface mapping which is between 2 abstract asynchronous interfaces. The Message Mapping for this Interface mapping involves multi-mapping (1:n) of the messages used.
    Also, for naming convenience, I have kept the names of the abstract async interface and its message type same.
    I have created containers for the message types of the both interfaces. The container for target message is of type 'multi-line'.
    When I checked the integration process, errors (red boxes) appear for both - the source and target messages in the transformation step properties window. The error text says <b>"Expression must return the interface type < Name of abstract message interface >"</b>
    What could be the cause of this error ?
    Any help would be appreciated.
    Thanks in advance.
    -Shankar

    Hi Shankar,
    Are you splitting the messages i.e 1 message into N messages ? If so, do  you have multiple message types in the Message Mapping in the target side ?
    Anyway, just recheck the Abstract Interfaces are activated. And reassign the container variables with Source message Absract Interfaces and Target message Abstract Interfaces.
    The error tells that, there is somewhere occurence problem.. So that is mismatch with the Message Interfaces..because you have selected the Multiline in the COntainers right ? Check without that..if it is ok, to narrow down the debugging..
    Regards,
    moorthy
    Regards,
    Moorthy

  • XSLT Mapping, Transformer configuration exception occurred when loading

    Hi,
    My source message is an IDOC HRMD, I need my target message to include exactly
    <EPERSON xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ContextPersonMessage">
    I have therefore suggested to use XSLT mapping.
    Here is the test_mapping.xsl that I Imported as Zip in Imported Archives.
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://polyright.com/xi/HR">
         <xsl:template match="/">
              <EPERSON xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ContextPersonMessage">
                          <xsl:for-each select="HRMD_A07/IDOC/E1PLOGI">
                <CONTEXTPERSON personid="" id="">
                      <PERSON action="add">
                               <TITLE></TITLE>
                               <FIRSTNAME><xsl:value-of select="E1PITYP/E1P0002/VORNA"/></FIRSTNAME>
                               <SECONDNAME></SECONDNAME>
                               <NAME><xsl:value-of select="E1PITYP/E1P0002/NACHN"/></NAME>
                               <ADDRESS1></ADDRESS1>
                               <ADDRESS2></ADDRESS2>
                               <POSTALCODE></POSTALCODE>
                               <CITY></CITY>
                               <COUNTRY></COUNTRY>
                               <COUNTRYID></COUNTRYID>
                               <PROFESSION></PROFESSION>
                               <LANGUAGE></LANGUAGE>
                               <LANGUAGEID></LANGUAGEID>
                               <PERSONTYPEID></PERSONTYPEID>
                               <CREATIONDATE></CREATIONDATE>
                               <BIRTHDATE></BIRTHDATE>
                               <CATEGORY></CATEGORY>
                             </PERSON>
                      </xsl:for-each>
              </EPERSON>
         </xsl:template>
    </xsl:stylesheet>
    When I test the Interface mapping, I get the following error:
    Transformer configuration exception occurred when loading XSLT test_mapping.xsl (http://polyright.com/xi/HR, 783938d1-4463-11dd-b136-e03ac0a80c15, -1)
    Searching through the forum, it is probably an namespace issue, but I have no idea of what needs to be changed. Any suggestions ?

    Try running end-to-end scenario and check if you could get detailed error message.
    Also check if the problem arises from the "ns0" usage.
    Regards,
    Prateek

  • Multiple source messages in transformation step in bpm

    Hello,
    I am using a transformation step in bpm, I have two source messages and 1 target message, I got an error 'expression must return the interface type XXXX(in source message)', I checked my source message in interface mapping and the container element, the types do match.
    All the interfaces in the OM as well as in the bpm container definition are of type abstract.
    It seems to have something to do with the interfaces belonging to different software components?
    I declared a usage dependency from one swcv (holding the bpm) to another (holding the abstract interfaces which cause the error in the transformation step), so that I can reference them in the bpm.
    I thought it might have something to do on how  the message interfaces are selected in the operation mapping. so I tried to select the messages through the depencency path, but that was of no help either.
    Have I been clear?
    Any ideas?
    Thanks
    Matthias

    Since no receiver information is available in the transformation step, there can be no value mapping within the transformation  step. If the messages to be transformed give values in different formats, for example different date formats, you must first normalize the values before the messages can be processed in the process. To do so, define a message mapping with a corresponding value mapping.
    Check the help page below for reference
    http://help.sap.com/saphelp_nwpi71/helpdata/en/27/db283fd0ca8443e10000000a114084/content.htm

  • Sync Send step after transformation step in BPM

    Hi Gurus,
    I have an interface where I am loading the data into an Oracle database and getting the response back (insertcount) from the database. Based on the response, I have to execute a stored procedure in another sync send step.
    I am doing perfectly alright until the transformation step. The sync send step after this step has the following entries.
    Sync interface: MI_LG_SP_INPUT_ABS
    Request Message: sp_lg_rec
    Response Message: sp_lg_snd
    While doing 'check(F7)', I am getting the following error.
    <b>Interface MI_LG_SP_INPUT_ABS for element sp_lg_poc_step2 is not abstract/asynchronous</b>
    The request message for this sync send step is the target message of the transformation step.
    This error is bugging me since 2 days. Please help me with this.
    Thanks
    Kalyan

    Sravya,
    I know what I did now. For my send sync interface which is MI_LG_SP_INPUT_ABS, I have unnecessarily created a container element and which caused this problem. From your post, I rechecked it and found that I don't need a container element for my abs/sync interface as I already have container elements for request and response which are abs/asynch.
    I gave you full points, thinking that you will come for my rescue in the future (just kidding!!!).
    Thanks again,
    Kalyan

  • BPM problem: mapping in a transformation step

    Hello,
    In my current BPM scenario....
    1)I created the interfaces below for the Receive step (receives MT_Request):
    -MI_async_BPM
    -MI_async_abstract
    2)Then I created the interface and mapping for the transformation step:
    -MI_JDBC_async_abstract
    MM(MT_Request to MT_Request2)
    IM(MI_async_abstract to MI_JDBC_async_abstract)
    3)Then I created the interface and mapping for the Send step:
    -MI_JDBC_async_in
    MM(MT_Request2 to MT_DB_Insert)
    IM(MI_JDBC_async_abstract to MI_JDBC_async_in)
    Problem:
    However, after I executed the scneario, it appeared the step 2) didn't go through correctly(error message:<b>NO_RECEIVER_CASE_ASYNC</b>).  Did I set up the configuration wrong in Integration Process?
    Also, I went back to ID to create a Receiver Determination for step 2) (thought this may clear the problem), but in the Sender tab of Integration Process object, MI_async_abstract was not in there.  Please give me a hand on this problem.  Thanks.
    Regards,
    Steve
    Message was edited by: steve peng
    Message was edited by: steve peng

    Hi Steve,
    Below is the explanation for correlation by Anand Torgal which i think will be helpful to u....
    To explain you the correlation in simple terms...take a simple example of BPM with a send step(async request) and receive step(async response). I am sending a PO request using the send step and waiting for a PO response using the recieve step. Assume that i have two instances of this BPM running i.e two PO request's going simultaneously. when i get the response back for these two requests , there will be two recieve steps waiting for the response since there are two instances of BPM running. the response need to be assigned the corresponding requests. This is where correlation comes into picture. I can use PO number as my correlation field. i.e I activate my correlation in the send step and use this correlation in receive step (this is configurable in BPM).
    Example: PO number needs to be part both request and the response message structure.
    BPM instance1:
    send step -> activate correlation -> send message with PO Number1
    Receive step -> use correlation -> receive response message with PO Number 1.
    BPM instance1:
    send step -> activate correlation -> send message with PO Number2
    Receive step -> use correlation -> receive response message with PO Number 2.
    There are many different scenario's whre you can use the correlation..this is one of them...The weblog shows another way of using correlation.
    Also Refer SAP help...
    Correlating Messages
    Use
    You use a correlation to assign messages that belong together to the same process instance. A correlation joins messages that have the same value for one or more XML elements. A correlation is therefore a loose coupling of messages: at design time, it enables you to define which message a receive step must wait for, without knowing the message ID.
    For example, in a process, receivestep_1receives the message purchaseorder, while receivestep_2receives the message salesorder. Receivestep_1creates a correlation that defines that the corresponding sales order must have the same purchase order number. Receivestep_2uses this correlation. This means that an instance of the process processes a purchase order and the corresponding sales order, which has the same purchase order number.
    If it satisfies the relevant correlations, a message can be processed in multiple processes. However, a message is only delivered once per process.
    http://help.sap.com/saphelp_nw04/helpdata/en/a5/64373f7853494fe10000000a114084/content.htm
    Regards,
    Abhy

  • RuntimeException in Message-Mapping transformation: Runtime exception durin

    Hi Friends,
    Iam going test Message Mapping, i got the error like
      RuntimeException in Message-Mapping transformation: Runtime exception during processing target field mapping /ns0:LeapIndent_R3_MT/Recordset/RowData/QTY_TNS. The message is: Exception:[java.lang.NumberFormatException: empty String] in class com.sap.aii.mappingtool.flib3.Arithm method formatNumber[, com.sap.aii.mappingtool.tf3.rt.Context@27f972cf]
    Pls help me ..
    Thanks & Regards,
    Nvr

    Hi Ravi,
      Thanks for ur reply, the problem is solved, the Date field is Mandaratory, they are not mention the data field, so that way the problem is coming.
    Thanks & Regards,
    NVR

  • XI transformer configuration exception

    Hi, I wonder if someone can help. I am struggling with an XSL that has been imported into XI. It is a mapping that has been used in another XI system (that I do not have access to) but I have a screen shot of the XSL. I have 'imported' this as an archive and used it on my mapping as it apparently solves loss of foreign characters when outputting to ISO-8859-1 but when I test I get the message 'Transformer configuration exception occurred when loading XSLT'. The code is as follows: -
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version "1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"  xmlns:fo="http://www.w3.org/1999/XSL/Format">
    <xsl:output encoding="ISO-8859-1"/>
    <xsl:template match="/">
         <xsl:copy-of select="*"/>
         </xsl:template>
    </xsl:stylesheet>
    Can anyone see what is wrong or is there something else I need to do. I added this .xsl into a zip before importing it.
    thanks
    Andy
    Edited by: Andy Jepson on Jan 16, 2008 1:50 PM
    Hi. I think I've solved this. Took the XSL into XMLSpy and saw that the file was badly formed. Even though I had read and re-read the code I seemed to miss an '=' on the version on line 2.
    Andy
    Edited by: Andy Jepson on Jan 16, 2008 4:41 PM
    Sorry guys. I still have a problem with this. The aforementioned XSL simply replaces the whole XML now rather than just amending the file encoding. Anybody help?

    Hi Tapio,
    Pls do check the following points.
    1. Make sure that the xsl file which you have your mapping code is having a 'small letter' extension. i.e., if your file name should be TAPIO.xsl, '.xsl' should not be in capital letters. If not change it and then make a zip file and reimport it as the imported archive.
    2. Check for the well formedness in any of the XML tools like XML spy. If any error is there with the missing tag or syntax you can rectify the same there itself.
    3. Activate the imported archive before using it in Interface Mapping.
    Cheers
    JK

  • Transformation step trace

    Hi all.
       I have a problem with checking if my mapping(transformation step in BPM) works OK.
       When I'm in WF log for my BPM, I'm able to see details of incoming message but I can't see outcoming one;
       for outcoming message - when I'm in message monitor(by forward navigation from WF log) after clicking on the entry I get the message: "Selected message does not exist(any more)".
      Transformation step is the second one in the line, just afrer receiver step:
      1. Receiver step (start of the process)
      2. Transformation step
      ....rest of steps in process.... 
       I did even a small test - have created very simple mapping (1:1) and put it as another Transformation step - result of the test was exactly the same like with original/intended mapping.
      SXMB_ADM has logging switched on and even trace level set to highest value.
      In BPM all steps have the option "Create new transaction" switched on.
    Anyone has any idea what can be wrong?
    Regards,
        G.

    The whole process ends with success.
    I'm able to see all steps including steps containers in WF log. Problem is when I try to go deeper and see an outcome from the mapping - then I'm moved to the message monitor and there I receive error message like described in my first post here. 
    Regs,
      G.

Maybe you are looking for

  • How can I stop iMovie from automatically cropping and applying kens burns to my photos?

    When I import stills into iMovie, it automatically adds a kens burns effect to each photo, and crops them. If I want to get rid of these effects, I have to do it manually for each individual photo. This takes alot of time and is very tedious to do. I

  • My iphone 5 screen is gone blank,

    my iphone 5 screen is gone blank, but still rings ??? nothing visable on screen,, it makes the noise when its been plugged in to charge etc.. it takes the screenshots... but it wont turn off or answer calls.. when it rigs. the screen is still blank o

  • Hi All ,How to add a new  field for MEDRUCK if we havea ZMEDRUCK

    Hi All ,         How to add a new  field for MEDRUCK if we have a ZMEDRUCK Req: If I want to add a new field for the following text editor line : IN MAIN WINDOW > TEXT EDITOR> SERCH FOR TOTAL_AMOUNT--> In that we will have &ekko-waers&    &komkfkwrt&

  • Types problem with rowset control and generated pageflow

    Hello, I made a rowset control from a flat table. Some of the columns where DATE type. In the associated pageflow, it generated a Databaseform bean and for the dates, it used a timestamp type. Which format should I use in the input of the form field

  • Extract trigger DDL from 8i database

    Hi All, We are in process of migrating our 8i database's to 11g. for some reason , we excluded triggers while import. now , I need to get all the ddl's from 8i database. I think , dbms_metatadata is not there in 8i. using the following script did not