BPM Question: JDBC Sender to RFC to JDBC Receiver

I have the following requirement:
JDBC Sender Adapter (by nature Asynchronous) – SELECT multiple rows from a table
To…
RFC Receiver Adapter (Synchronous)
To…
JDBC Receiver Adapter (Synchronous) – UPDATE multiple rows in a table
Then…
IF <SAP:Error> XML is returned from the JDBC Receiver Adapter, I want to either issue a CCMS alert, or utilize the XI Email Adapter for error notification. 
ELSE, if <root_response> XML is returned from the JDBC Receiver Adapter, do nothing.
This obviously requires a BPM.  If I use the JDBC Receiver Adapter Asynchronously (with no error handling) this is a piece of cake.  But after trying to use it synchronously along with error handling logic, I am stuck.
This issue that I am facing is how to logically handle the JDBC Receiver Adapter Response XML in the BPM.  I would like to know what I need to do in the BPM in order to issue a CCMS alert (and/or send a message through the XI Email Adapter) ONLY if the <SAP:Error> XML is returned. 
Below are examples of the 2 types of response messages that I would receive back from the JDBC Receiver:
Error:
  <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
  <!--  Call Adapter -->
  <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
  <SAP:Category>XIAdapterFramework</SAP:Category>
  <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
  <SAP:P1 />
  <SAP:P2 />
  <SAP:P3 />
  <SAP:P4 />
  <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'SAP_OrderImport' (structure 'StatementName2'): java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]Violation of PRIMARY KEY constraint 'PK_SAP_OrderImport'. Cannot insert duplicate key in object 'SAP_OrderImport'.</SAP:AdditionalText>
  <SAP:ApplicationFaultMessage namespace="" />
  <SAP:Stack />
  <SAP:Retry>M</SAP:Retry>
  </SAP:Error>
Success:
  <?xml version="1.0" encoding="utf-8" ?>
  <root_response>
  <StatementName1_response>
  <update_count>1</update_count>
  </StatementName1_response>
  </root_response>
I have searched SDN for a while but did not find anything that specifically addressed this.  I would appreciate any help…

Hi,
In ur BPM wrap the jdbc send step with a exception block. in the exception block define a control step to throw an alert.
so when the jdbc step fails, the exception is caught and an alert is generated by the control step.
cheers,
naveen

Similar Messages

  • BPM scenario:single sender message type and multiple receiver message types

    Hi,
    I am doing a scenario in which i have a single file which may contain different record types say type A,B,C.
    I want to separate all records of type A, all records of type B, also all records of type C into different files.
    so i will have 3 files of type record A,B,C in destination.
    I am using File adapter on both sides.
    I think one way may be using ccBPM.Can you please inform me how to achieve it using BPM.
    If there is any other way Please mention.

    You can use multimapping (with or without BPM)
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible ....without BPM
    /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure ....with BPM...is it that you will always get three output files?

  • JDBC(Sender)-XI-RFC (Request) RFC (Response)-XI-JDBC(Receiver)

    Hi All,
    JDBC(Sender)-XI-RFC (Request)
    RFC (Response)-XI-JDBC(Receiver).
    Need some solution for sending email for successfully completion of scenario after updating SQL DB Table.
    Let me explain the scenario:
    We are pooling the SQL DB table to pull the records and map the records to RFC request parameters, after successful Posting the entries in R3 HR, RFC response contain the same with E (Error) S (Success) records status, we are updating the same in SQL DB table, I implemented the complete scenario without BPM with the help of module processor in Sending JDBC Adapter, scenario is working fine but now we have to send the successful mail to our support team with status contain Number of success, Error and total records as email.
    I need the solution how to implement the same requirement in current scenario.
    Is their way to do something with the RFC receiver adapter module addition to send the successful mail or generating Alert with all the description?
    I am at PI 7.0 SP12 with HP unix box.
    Thanks in Advance for creative idea
    With Regards
    Sunil

    Hi Bhavesh,
    Thanks for your help and your blog is really helpful. I implemented the UDF for generating Email Alert but this alert is generating before Updating the SQL Database, is their any way to generate alert after updating the SQL.
    Actually in my scenario we are sending the data from SQL to R3 by RFC and again updating the SQL status whatever the RFC return, after successfully updating SQL we need to send success email to support people but if we are sending the email before updating the DB then their will be problem.
    JDBC receiver after updating the SQL DB returns the response with No. of row updated but how to capture this response, if we can capture this response then we can send email through email adapter even their is one more problem, In my scenario I am counting the number of rows with status “S” and “E” and sending the same in alert email but if are sending email after updating the SQL DB where can hold the row count value and use it while sending the email.
    Implemented the scenario without using BPM..i am using sender JDBC module processor for Syn-Asyn bridge.
    Even I do not find the link to reward point. Please let me know how to do it.
    With Regards
    Sunil

  • BPM FILE-- JDBC-- RFC

    Hi All,
    I am doing the File to JDBC(Sync) to RFC through BPM
    Start->Receive(Ansc)>Send(sync)>send(Anyc)>
    I have created like this:
    DT  and corresponding MT
    1. File
    2.JDBC_Req
    3.JDBC_Req_response
    i have created Message interfaces bellow
    File outbound
    File outbound Abstract
    JDBC sync inound
    JDBC Sync Abstract
    JDBC response Asyc Abstract
    I have created Mappings like this
    File to File outbound Abstract
    File Abstact JDBC_req
    JDBC_Req Abstact to JDBC_Req
    JDBC_res Abstact to JDBC_res
    JDBC_res Abstact to RFC
    I have created Interface Mappings like this
    File to File Abstract
    JDBC_req to JDBC_res
    JDBC_res to RFC
    while i am doing in BPM i am getting error like this:
    Message File Abstact to be received and synchrounous interface MI_JDBC_req_Abstact are not of the same type
    Pls suggest me how i can map the File Abstact and JDBC Abstact.
    Thanks,
    Venkat

    Hi,
    According to my understanding your scenario is:
    1) Pick a file from some file server
    2) Send it to a BPM
    3) Send this file as a request to JDBC and get back the response....i.e synchronous..
    4) Once you get the response from JDBC map it to a RFC structure and send it to the specified destination.
    If the above flow is correctly understood by me then the following design won't work....
    Start--Receive--Receive--Tranformation--Send(Sync)--Send--End
    Your design should be:
    Start --> Receive (async) --> Transformation --> Send (Sync) --> Send (Async) --> End
    1)
    a) Define an Outbound-Async MI for File Sender
    b) Define an Abstract-Asynch MI for BPM ....(include in first receive step of BPM)
    MT for (a) and (b) shoulde be same...
    2) Define an Abstract-Async MI....this should have the request structure for the JDB
    3) Create a mapping between MI from step 1a and 2...(include in the Transformation step of BPM)
    4) Create an Abstract-Sync MI for BPM_to_JDBC....include the same message-type as that in step2....in the input message (request) part of the sync MI.....(include in the Sync-Send Step of BPM)
    5) Create Inbound-Sync MI for the JDBC receiver...again both the message type should be same as that in the Abstract-Sync MI of step4
    6) Create Abstract-Async MI for the RFC receiver....(include in the last Send step of the BPM)
    I hope that you are defining the MIs with proper message-types and with proper direction...same applicable for container variable definition...please note that all the MIs involved in the BPM should be abstract
    The error that you are getting is bcoz of the mismatch in the message-type in the MI....please check it.
    Regards,
    Abhishek.

  • BPM design - JDBC - SOAP - JDBC

    Hi experts,
    Business scenario - Pull the data from Data base using a Stored Procedure(this marks the records once it is successful) and call web service using this data. If web service call is success, push the response received from web service to Data Base. If call to web service fails, still push the data which was pulled initially from database back to same location in database.
    Iam using BPM for this.
    Block1  - get the data into BPM from Database  (async), had an exception branch to check its success status and raise alert incase of failure.
    if Block 1 is good.
    Transform the data to Web service input format
    Block2 -  send the call to webservice Synchronous send step(request and response are defined as abstract asynchronous), had an exception branch to check if call is good or not, if the call is unsuccessful, write the data back to database
    If block 2 is good,
    Block3 - Response(abstract asynchronous ) recieved from webservice is transformed to Data base format and written to Data base using JDBC receiver adapter.
    I would like to know if this design is good, can I use options like Async \ synch bridge here.
    Please let me know your thoughts.

    thank you for all your views.
    Stefan suggested initially to call the web service asynchronously and receive the response from web service in another receive step . When I do that receive step is asking me to have a correlation, eventhough I created a correlation it is vanishing when I save it.
    May be I could not understand it correctly.
    are these steps are good.
    BPM process  -
    Block 1 - ( to ge the data from data base) Asyn Receive step ,  
    Block2  - Asynch Send step (to call web service), Aynch receive step(to receive the response from web service ), exception branch (for web service call failures)
    Block3 - send step to send the response received from web service to Data base.

  • Broken pipe error in Sync Send JDBC Receiver:   Extremely Serious issue

    Hi forum,
    I have a serious error in a JDBC->XI--> JDBC scenario,
    Step1: I use a sender JDBC channel to select some distinct values from  a table say X, and update the same rows,
    Query SQL Statement: select distinct Branch from dbo.X where status = 0
    Update SQL statement: update dbo.X set Status = 2 where Status = 0
    Step 2: enter BPM
    Step 3: enter a loop
    Step 4:make a synchronous call to the same table X, to fetch some records,
    SQL query: select * from X where status = 0 and Branch = i; Update X set status = 9 where Branch = i
    Step 5: close loop,  this loop iterates for 5 or 6 times depending on i, which is no. of branches selected by the sender JDBC channel
    so all the calls are to the same table, same databsse(SQL Server)
    the problem is when this sync calls happens in the loop, it some times gives following error, which i se in RWB:
    <b>Error Unable to execute statement for table or stored procedure. 'X' (Structure 'STATEMENT_X') due to com.microsoft.sqlserver.jdbc.SQLServerException: An exception occurred during the DBComms.transmit operation. Exception:Broken pipe (errno:32). Context:(2217)</b>
    i have no way to trace the cause of the error, the database is perfect and the error logs in the SQL server shows no trace of any error,
    Note: It works sometimes
    i dont know whom to approach, pls help
    the issue is very very serious as its in production system,

    Hi Sudeep,
    SAP Note 846079 - XI 3.0 JDBC Receiver: # of Retries on SQL Error w/o Effect
    Please check the following SAP note also - 831162
    Some info which i found there and can be relevant in to your scenario.....
    Q: I am using a JDBC Receiver Adapter in conjunction with the  Lotus Domino Driver for JDBC perform an INSERT or UPDATE operation on a database. When sending a message to the receiver, the Adapter Monitoring shows the following error message:
    "java.sql.SQLException: [Lotus][Domino Driver for JDBC]Invalid cursor state"
    Is there a fix for this issue?
    A: To work around this JDBC driver problem, activate the Advanced Mode for the respective JDBC Receiver channel and configure the setting "Number of Retries of Database Transaction on SQL Error" to a value > 0. Additionally, make sure that the setting "Database Auto-Commit Enabled" is also active as the Lotus Domino Driver for JDBC does not support transactions.
    Apply note 846079 before configuring this scenario.
    Q: The TCP/IP connection to my database host is running over an unreliable network connection, i.e. the connection is sometimes interrupted. Consequently, I sporadically receive an SQLException regarding a closed connection in the system trace or audit log or the connection as well as the JDBC Adapter channel are hanging.
    How can I work around this connectivity issue?
    A: Enable the "Advanced Mode" for the respective JDBC Adapter channel and select the option "Disconnect from Database After Processing each Message".
    Note that this might put additional load on your DBMS due to the creation of a new database connection for each message.
    I dont have access to a database right now, so i am not able to check this.
    Also check the JDBC driver compatability as mentioned in the above note.
    Cheer's

  • RFC , IDoc , XI and JDBC receiver communication channel--- Good Design

    Hi Experts,
    We have developed around 60+ interfaces on PI7.1 EHP1, in that 20 interfaces sending data to Data Base using JDBC receiver communication channel, 15 interfaces ABAP inbound proxy using XI adapter,10 Scenarios using IDoc receiver channel and 15 scenarios using RFC receiver channel.
    But I have created only one IDoc, XI , JDBC and RFC channel.
    Is it right idea/design or do I need to create more channels to handle multiple request.
    Please share your thoughts on this.
    Regards,
    JAM

    Hi,
    For XI,RFC and Idoc when it's pointing to one SAP system you don't need any further comm channels.
    For JDBC , if you are pointing to only one database you can use the same channel, if the target/databse changes you need more comm channels.
    Your Design is as per the standards.
    Regards,
    Sainath Chutke

  • JDBC Sender to JDBC Receiver || Acknowledgement

    Hi Experts,
    the scenario is the following:
    JDBC sender to poll a database and receive data from table a (Query SQL Statement)
    after the mapping, a JDBC receiver inserts the resultset from a into table b.
    okay, so far, now the action is done and the sender adapter has to delete the resultset from table a (with the Update SQL Statement)
    the problem is now how to ensure that only the resultset is deleted from a IF its really inserted into b? means: how to tell any adapter that the update-command is only done when the insert worked correctly?
    thanks in advance
    Chris

    First of all, u will have to make an async call from JDBC. The scenario wouldn't be that good in design :).
    The only thing to be taken care should be the poll interval. It should be large enough so that the BPM processing is complete otherwise the polling of same data will occur twice. (U may use Planning Availability Times concept here).
    I understand that the UPDATE statement is mandatory
    U can write Test to just don't update anything.
    Now the data would be sent to receiver and after the successful receipt at receiver, BPM send step would be triggered with the update statement to actually update the table.
    Hope it makes everything clear
    Regards,
    Prateek

  • Using TEST mode in sender file channel to trigger jdbc receiver channel

    Hi
    In order to call a jdbc receiver channel every 15 minutes I intended to use a file sender channel as a trigger where I set the Processing Mode to TEST. However, I would like to make multiple simultaneous different calls to the jdbc receiver channel, so I have multiple files in the folder, where the file sender channel is listening. Quality of Service in the file sender channel is set to Best Effort as the call is syncroneous.
    However, because the messages in the folder are not deleted, only the first message is being processed no matter whether I choose Processing Sequence "By Date" or "By Name".
    I would like to avoid having to create 15 folders containing one message each, so is there another way of doing it?
    By the way, I redirect the response from the jdbc receiver channel to a different folder, but I think this is irrelevant in this case.
    I use PI 7.11
    /Mikael

    Thanks for your answer, but I would like to avoid using Availability planning.
    Right now I am thinking about using "Advanced selection for source file" and then just specify 14 different folders here each containing one trigger message, but it seems that only the oldest message (if I choose Processing Sequence = Date) or the first message alfabetically (if I choose Processing Sequence = Name) is being processed across the many folders which I think is very weird!

  • Problem between SOAP Sender and JDBC Receiver

    Hi,
    I have a asynchronous scenary between SOAP Sender and JDBC Receiver.
    The idea is sending an ID for updating one register.
    Table structure is:
    TABLE AS_PERSONA
        (P_RUT                         VARCHAR2(10) NOT NULL,
        P_NOMBRE                       VARCHAR2(50),
        P_APELLIDO                     VARCHAR2(50))
    The ID is the P_RUT field.
    The structure of message that I send by SOAP, is the following:
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <SOAP-ENV:Body>
              <m:MT_CONS_SOAP xmlns:m="urn:prueba:voliva">
                   <CONSULTA>
                        <P_RUT>15445</P_RUT>
                   </CONSULTA>
              </m:MT_CONS_SOAP>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    The JDBC receiver structure is:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_CONS_PERSONA xmlns:ns0="urn:prueba:voliva">
         <Statement>
              <AS_PERSONA action="UPDATE">
                   <table>AS_PERSONA</table>
                   <access>
                        <P_NOMBRE>DELETE_BY_XI</P_NOMBRE>
                        <P_APELLIDO>DELETE_BY_XI</P_APELLIDO>
                   </access>
                   <key>
                        <P_RUT>15445</P_RUT>
                   </key>
              </AS_PERSONA>
         </Statement>
    </ns0:MT_CONS_PERSONA>
    When I do a call to SOAP by XMLspy, it returns a message without data, that means succesfull reply.
    I see message monitor and see the succesfull flag. But in the database it doesn't update the register.
    This scenario was proved using the File Sender and same JDBC Receiver, then result was succesfull.
    I proved SOAP Sender with a File Receiver, storing information from SOAP sender in an archive, and works well.
    Then I imagine that exist some problem between SOAP and JDBC. what could be happening ?
    Thanks.

    Hi,
    Looks like the problem is with the JDBC receiver...try updating the value in the table by using a File-JDBC scenario..does it work..check the adapter monitor in RWB..
    Regards,
    Sushumna

  • Proxy Sender & JDBC Receiver

    Dear Friends,
    We are using PI 7.1.
    The complete flow of control in the scenario i am right now working is as follows..
    I have to send a single field from R/3 table to the clients Legacy System that is running on Oracle 10.2. Based on that field, data has to be fetched from 2 tables from the Oracle System and sent back as response.
    Then some process happens at R/3 side using the fetched data. Based on the process certain flags in R/3 table are updated.
    Again this (flag) has to be updated back in the one of the Oracle tables.
    Right now i have decided to use Synchronous Proxy Sender and Asyn JDBC receiver.
    Again for the last interface i have planned to use Asyn Proxy Sender & Async JDBC Receiver.
    Please suggest me whether this is correct. Is there any other good way of realizing the above scenario.
    Thanks
    Ramesh

    XI JDBC Adapter using stored procedures
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40b92770-db81-2a10-8e91-f747188d8033
    Re: problem in receiver JDBC adapter
    Error With JDBC receiver adapter
    JDBC Adapter (Receiver)
    JDBC Adapter
    go through these links..
    Hope these helps..
    Regards,
    Parvathy

  • JDBC receiver adapter for AS400-query time out due to Escape Symbol

    Hello,
    I am uisng JDBC receiver adapter for AS 400, When I execute query, the query needs to have arguments in the open and close single ticks ('    12345' )
    My XML pay load looks like this, which is RFC sender. Look at dcudcstmr in <i><b>(' 838912')</b></i>.  When receiver gets this message the ' (single quotes are disappeared.
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns1:MT_Cma_Customer_Select_Request xmlns:ns1="http://freemanco.com/xi/Get_Customer">
    - <Statement>
    - <LawsonCustomer action="SQL_QUERY">
      <access>select f1.DACMCMPNY from sap.sapcustvew f1, sap.sapcustvew f2 where f2.dcudcstmr in <i><b>(' 838912')</b></i> and (f1.dcudcstmr=f2.dcudcstmr or f2.komaster=f1.dcudcstmr)</access>
      </LawsonCustomer>
      </Statement>
      </ns1:MT_Cma_Customer_Select_Request>
    On the Receiver JDBC adapter I have tried with different combinations of Escape Symbol for Aposrophe as follows
    <b>   \
       '</b>
    As you know this is related to epcape character, I get following error all the time. Looks like the query is not able to execute in the specified time. My question is how do I get single quote as part of query.
    <b>select f1.DACMCMPNY from sap.sapcustvew f1, sap.sapcustvew f2 where f2.dcudcstmr in ( 100001) and (f1.dcudcstmr=f2.dcudcstmr or f2.komaster=f1.dcudcstmr) 2007-09-20 15:56:42 Error Unable to execute statement for table or stored procedure. 'LawsonCustomer' (Structure 'Statement') due to java.sql.SQLException:
    [SQL0666] Estimated query processing time 13766 exceeds limit 8000. 2007-09-20 15:56:42 Error MP: exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'LawsonCustomer' (structure 'Statement'): java.sql.SQLException:
    [SQL0666] Estimated query processing time 13766 exceeds limit 8000. 2007-09-20 15:56:42 Error Exception caught by adapter framework: Error processing request in sax parser: Error when executing statement for table/stored proc. 'LawsonCustomer' (structure 'Statement'): java.sql.SQLException:
    [SQL0666] Estimated query processing time 13766 exceeds limit 8000. 2007-09-20 15:56:42 Error Delivery of the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'LawsonCustomer' (structure 'Statement'): java.sql.SQLException:
    [SQL0666] Estimated query processing time 13766 exceeds limit 8000.. Setting message to status failed. 2007-09-20 15:56:42 Error The message status set to FAIL. 2007-09-20 15:56:42 Error Returning synchronous error message to calling application: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'LawsonCustomer' (structure 'Statement'): java.sql.SQLException:
    [SQL0666] Estimated query processing time 13766 exceeds limit 8000</b>
    Any feedback or helpfull tips appreciated.
    Thank you,
    Balaji

    Raj,
    Thank you for the reponse. I am using UDF on sender to generate sql statement as you see in sender XML message. After the message reaching receiver, gets executed but no response from AS400 becasue of missing single quotes in the sql query executed.
    Sender XML sends
    <access>select f1.DACMCMPNY from sap.sapcustvew f1, sap.sapcustvew f2 where f2.dcudcstmr in <u><b>(' 838912')</b></u> and (f1.dcudcstmr=f2.dcudcstmr or f2.komaster=f1.dcudcstmr)</access>
    Receiver executes as
    select f1.DACMCMPNY from sap.sapcustvew f1, sap.sapcustvew f2 where f2.dcudcstmr in ( <b><u>838912</u></b>) and (f1.dcudcstmr=f2.dcudcstmr or f2.komaster=f1.dcudcstmr)
    As you see the single quotes are missing. Like I said in previous posting I tried with following Escape Symbol for Aposrophe.
    Let me know if you need more information.
    Thank you,
    Balaji

  • How to modify oracle stored procedure for JDBC Receiver Adapter?

    Hi all.
    This is Urgent.
    Scenario is
      SELECT a TABLE with procedure and update column with it,
      then send data to SAP System with RFC Adapter.
    When I executed a sync bpm, scenario was finished internal error.
    Pls, let me know how to correct procedure using JDBC Receiver Adapter?
    Regrds all.
    Procedure Code -
    SET SERVEROUTPUT ON
    CREATE OR REPLACE PROCEDURE zwtn2
    IS
       v_seller_company      wtnivhd.seller_company%TYPE;
       v_invoice_no      wtnivhd.invoice_no%TYPE;
       v_report_date     wtnivhd.report_date%TYPE;
       v_customs_date     wtnivhd.customs_date%TYPE;
       v_ap_post_date     wtnivhd.ap_post_date%TYPE;
       v_gr_date          wtnivhd.gr_date%TYPE;
    CURSOR l_cursor IS
       SELECT seller_company,
              invoice_no,
              report_date,
              customs_date,
              ap_post_date,
              gr_date
         FROM wtnivhd
        WHERE wtn_send_flag = 'N'
          AND rownum < 31
    FOR UPDATE;
    BEGIN
       OPEN l_cursor;
       LOOP
         FETCH l_cursor
          INTO v_seller_company,
               v_invoice_no,
               v_report_date,
               v_customs_date,
               v_ap_post_date,
               v_gr_date;
         EXIT WHEN l_cursor%NOTFOUND;
         UPDATE wtnivhd
            SET wtn_send_flag = 'Y' 
           WHERE CURRENT OF l_cursor;
       END LOOP;
    CLOSE l_cursor;
    END zwtn2;

    Hi Alex,
    plz have a look to Runtime Workbench / Adapter Monitoring to find an error message.
    Regards,
    Udo

  • Synchronous  JDBC Receiver Adapter

    Hi,
    My requirement is JDBC--- XI --- JDBC (Sync) — JDBC.
    Let me be more precise about the above scenario.
    JDBC sender picks up a record from DB1 and sends to DB2 and gets a response from DB2 and send the response to DB3.
    I am sure this can be handled only through BPM.
    But my question will a JDBC Receiver adapter gets a response back to XI. If this is possible , can some one tell me how can I achieve it.
    Thanks
    Shaik

    <i>I am sure this can be handled only through BPM. </i>
    BPM required.
    <i>
    But my question will a JDBC Receiver adapter gets a response back to XI.</i>
    Yes.
    The weblog by Bhavesh would also b helpful.
    Regards,
    Prateek
    Message was edited by:
            Prateek Srivastava

  • Message Split - JDBC receiver.

    Hi ,
    I have a payload like -
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_JDBC xmlns:ns0="http://AIM/Pmation">
    <STATEMENTNAME>
    <PARTINFO ACTION="EXECUTE">
    <TABLE>INSERT_HUB_PARTINFO</TABLE>
    <I_CLINTERVALVALUE1 isInput="1" type="NUMERIC">9.6</I_CLINTERVALVALUE1>
    <I_CLINTERVALVALUE2 isInput="1" type="NUMERIC">9.6</I_CLINTERVALVALUE2>
    </PARTINFO>
    </STATEMENTNAME>
    <STATEMENTNAME>
    <PARTINFO ACTION="EXECUTE">
    <TABLE>INSERT_HUB_PARTINFO</TABLE>
    <I_CLINTERVALVALUE1 isInput="1" type="NUMERIC">9.6</I_CLINTERVALVALUE1>
    <I_CLINTERVALVALUE2 isInput="1" type="NUMERIC">9.6</I_CLINTERVALVALUE2>
    </PARTINFO>
    </STATEMENTNAME>
    <STATEMENTNAME>
    <PARTINFO ACTION="EXECUTE">
    <TABLE>INSERT_HUB_PARTINFO</TABLE>
    <I_CLINTERVALVALUE1 isInput="1" type="NUMERIC">9.6</I_CLINTERVALVALUE1>
    <I_CLINTERVALVALUE2 isInput="1" type="NUMERIC">9.6</I_CLINTERVALVALUE2>
    </PARTINFO>
    </STATEMENTNAME>
    </STATEMENTNAME></ns0:MT_JDBC>
    I want to split this at each </STATEMENTNAME> into different payloads and send each to a JDBC receiver to call a stored procedure.
    Is this possible using BPM. If so how?
    Thanks,
    Varghese.

    Varghese ,
    Each of these STATEMENT is going to make a separate call  to the Stored procedure anyways, so it should not be an issue.
    But, if you still want to do this, use MultMapping withput BPM as shwon in this blog,
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    But with my understanding the current Datatype itself should call the SP multiple times,
    Regards
    Bhavesh

Maybe you are looking for