Idoc state 56.  jdbc to multiple idoc.

hi,
i have made a jdbc to multiple idoc scenario.
i disabled so many mandatory field.
i defined a external defination for the idoc.
i changed occurance for "IDOC" segment.
i can send multiple idoc successfully to ECC.
BUT:
I found that state 56 of the idoc with tcode we05 IN ECC.
how should i resolve the issue?

Hi ,
In WE02 or WE05 you can find the details
status 56 is Idoc with errors added , so check you scenario
Hi,
Just take the payload from the moni and check your mapping first ( TEST TAB)
Regards,
Jude
Edited by: jude bright on Oct 21, 2009 10:49 AM

Similar Messages

  • JDBC to Multiple IDOC scenario

    Dear Experts,
    My Scenario is JDBC to Multiple IDOC scenario.
    I am reading 100 records and generating 100 IDOC's at the target ECC system, the problem which I am facing is if I have any issue with 1 record the total message gets failed in SXMB_MONI due to mapping failure.
    So again I need to reset all 100 records in my source database and I should reprocess the same.
    Is there any way to process the 99 and fail only one record which causes error.
    Is Stored procedure will fix this issue or do I need to use BPM for this to achieve.
    Please advice.
    Thanks,
    --Sai

    Hi Sai,
    As you are selecting 100 records in one go, all the records will come as a single message in PI.
    Please find below my suggestion for this issue.
    1. Selecting one record per message will not be efficient. So please do not use it.
    2. Create a secondary sctucture. Generate it only if there is an error in the record. You may set up an alert for that message. So if any error occurs, other 99 idocs can go normally, while you will get an aleart for the failed record.
    3. Another option is to create an idoc for error record also. You can do this by providing some default values in place of error fields. You can then monitor such idocs in ECC.
    Personally, i feel 2nd option is the best. Let me know if you need more information on this.
    Regards,
    Gavaksh

  • JDBC/select/async statement to JDBC/stored procedure/sync call

    Hi
    We have JDBC/select/async statement to JDBC/stored procedure/sync call i.e sender and receiver are JDBC.
    PI has to pick all the the records of single internal order number at a time from sender system and upload to receiver JDBc,
    gets the response and routes to sender/insert statement.
    This should run only once per day.
    We will have multiple Internal orders daily, each order consisting of 10 to 20 records but only one IO related records has
    to upload to Receiver/JDBC
    What are the options available ?
    We have thought of following options
    1. SQL query is already to pick, but we have to pick records at one time daily. example: morning,evening or midnight.
       At that time it can pick multiple times but it should not pick through out day
    2. Is there any option in BPM so that we can group IO's at a time and upload ? If so what are the steps need to use
       Any additonal receive step need to be used to pick the records from the table.
    Thanks

    hi
    as i can understando you, you will receive mani IO and you must execute one IO in the receiver SP? if so, you can solve this usssing a ccBPM where you will have to create a mapping(0.N) where the source and the target structure will be the same, the diferrence will be in the occurrance of the target structure which will have to be 0.N (Tab signature in Message Mapping). then back to the ccBPM define a block with the property ForEach. this will  loop any times accord with the number of IO that you receive from the sender. as a result you will execute one SP for each IO.
    so, you ccBPM will be
    RS>TS>BLOCK(Multiline container and single container of source structure)>TS->SS
    RS:Receive Step
    TS:Trans. Step
    SS:Send Step
    Also the container will be:
    source--> type Abs
    source_multiline --> type Abs
    target -->type Abs
    Thanks
    Rodrigo P.
    Edited by: Rodrigo Alejandro Pertierra on Jun 24, 2010 4:54 PM

  • DYnamic select statement in JDBC adapter?

    Hi guys,
                 Is it possible so send dynamic select statement in jdbc adapter?
    XIer

    Aamir,
    The poster did not specify whether this was sender or receiver channel, but it would only make sense that a "dynamic query" must be on the receiver communication channel since if it was on the sender channel, the channel would have to intelligently determine how to do dynamic queries.
    Also, the poster asked if there was a way to "send a dynamic query" to the channel.  This seems to imply that the channel is receiving information from somewhere to determine the query, which could only mean it is a receiver channel.
    If you would like more information on the JDBC sender communication channel, please open a new thread.

  • How to use INSERT INTO ALL statement in jdbc prepared statement with beans

    Kindly give me some example that how we can use "INSERT INTO ALL STATEMENT" in jdbc prepared statement inside a jsf bean?
    Actually i want to take employee id's of present employees using single jsf page and using one textbox for each employee id.
    How can i use INSERT INTO ALL statement to achieve this?
    Following is my code snippet.
    AttendanceBean.java:
    public class AttendanceBean {
    private int atteid;
    private String attdname;
    private int attday;
    private int attmonth;
    private int attyear;
    public static Connection getAttConnection() throws Exception {
    String driver = "oracle.jdbc.driver.OracleDriver";
    String url = "jdbc:oracle:thin:@localhost:1521:globldb3";
    String username = "scott";
    String password = "tiger";
    Class.forName(driver);
    Connection conn = DriverManager.getConnection(url, username, password);
    return conn;
    public String addAttendance(){
    Connection conn = null;
    PreparedStatement pstmt = null;
    boolean committed = false;
    try {
    conn = getAttConnection();
    conn.setAutoCommit(false);
    String query = "INSERT ALL INTO attendance VALUES (?,?,?,?,?)";
    pstmt = conn.prepareStatement(query);
    pstmt.setInt(1,this.atteid);
    pstmt.setString(2,this.attdname);
    pstmt.setInt(3,this.attday);
    pstmt.setInt(4,this.attmonth);
    pstmt.setInt(5,this.attyear);
    pstmt.executeUpdate();
    conn.commit();
    conn.setAutoCommit(true);
    committed = true;
    return "home.xhtml";
    } catch (Exception e) {
    e.printStackTrace();
    return "CRM.xhtml";
    } finally {
    try{
    if (!committed) conn.rollback();
    if (pstmt != null) pstmt.close();
    if (conn != null) conn.close();
    }catch(Exception e){
    e.printStackTrace();
    }

    Check this program for some info on Push buttons:
    1-DEMO_DYNPRO_PUSH_BUTTON
    2-DEMO_DYNPRO_MODULE
    3-DEMO_DYNPRO_ON_CONDITION
    Suppose Your screen is 101
    Then in that screen create one push button and assign it a function code.
    Now in the PAI of the 101 screen
    Create Module for user command
    Inside that module checc the sy-ucomm if sy-ucomm eq <Function code of your push button>
    Insert the values in database.
    *& Module USER_COMMAND_0101 INPUT
    process after input for screen 0101 *
    MODULE USER_COMMAND_0101 INPUT.
    CASE OK_CODE.
    WHEN 'SAVE'.
    *Insert the values here
    WHEN 'DISP'.
    ENDCASE.
    CLEAR OK_CODE.
    ENDMODULE. " USER_COMMAND_0101 INPUT
    Regards
    Neha
    Edited by: Neha Shukla on Dec 3, 2008 1:02 AM
    Edited by: Neha Shukla on Dec 3, 2008 1:02 AM
    Edited by: Neha Shukla on Dec 3, 2008 1:06 AM

  • Where to see generated SQL statement from jdbc adapter?

    Hi everybody,
    where can I see the generated SQL statement from JDBC adapter?
    Regards Mario

    Yes and True lterally means the same, but alas XI does not understand literature..
    Just checked the note as well, as you are correct!
    Regards
    Bhavesh

  • JDBC 'Query Multiple to XML' throwing NullPointerException on LC Server

    Hi all...
    It seems that any attempt to perform a jdbc access from a deployed LCA (my process at this point only contains the JDBC 'query multiple to xml' operation) results in the following exception on the LC server (see below). The query and xml generation all seem to work ok from the Workbench. I can mail the lca upon request. Thanks.
    [4/28/08 17:10:15:557 EDT] 00000059 SystemOut O [Flex] [ERROR] Root cause: java.lang.NullPointerException
    at com.adobe.idp.dsc.jdbc.helper.SqlHelper.executeQuery(SqlHelper.java:85)
    at com.adobe.idp.dsc.jdbc.JDBCService.queryMultipleToXml(JDBCService.java:391)
    at sun.reflect.GeneratedMethodAccessor1517.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.adobe.idp.dsc.component.impl.DefaultPOJOInvokerImpl.invoke(DefaultPOJOInvokerImpl.jav a:181)
    at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor. java:134)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(Transa ctionInterceptor.java:74)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTr ansactionCMTAdapterBean.java:336)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doSupports(Ej bTransactionCMTAdapterBean.java:212)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EJSLocalStatelessEjbTransactionCMTAdapter_ caf58c4f.doSupports(Unknown Source)
    at com.adobe.idp.dsc.transaction.impl.ejb.EjbTransactionProvider.execute(EjbTransactionProvi der.java:104)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor.intercept(TransactionInt erceptor.java:72)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.interceptor.impl.InvalidStateInterceptor.intercept(InvalidStateIntercep tor.java:37)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.interceptor.impl.AuthorizationInterceptor.intercept(AuthorizationInterc eptor.java:88)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.engine.impl.ServiceEngineImpl.invoke(ServiceEngineImpl.java:113)
    at com.adobe.idp.dsc.routing.Router.routeRequest(Router.java:102)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageReceiver.routeMessage(AbstractMessage Receiver.java:88)
    at com.adobe.idp.dsc.provider.impl.vm.VMMessageDispatcher.doSend(VMMessageDispatcher.java:21 0)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageDispatcher.send(AbstractMessageDispat cher.java:57)
    at com.adobe.idp.dsc.clientsdk.ServiceClient.invoke(ServiceClient.java:208)
    at com.adobe.idp.taskmanager.dsc.service.TaskManagerServiceImpl.renderForm(TaskManagerServic eImpl.java:3404)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.adobe.idp.dsc.component.impl.DefaultPOJOInvokerImpl.invoke(DefaultPOJOInvokerImpl.jav a:181)
    at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor. java:134)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.trans

    is your issue solved,if not mail me
    [email protected]

  • Multiple SQL statements from JDBC

    Dear All,
    We are working on R/3- >XI->JDBC scenario. We have sender as Proxy which sends some data to XI which needs to be Updated in multiple database tables in oracle. We have few Insert,Update and Delete Query to be

    Hi
    yes this can be done by using the concept IDOC to JDBC
    ALe settings for thi s are :
    Steps for XI
    Step 1)
    Goto SM59.
    Create new RFC destination of type 3(Abap connection).
    Give a suitable name and description.
    Give the Ip address of the R3 system.
    Give the system number.
    Give the gateway host name and gateway service (3300 + system number).
    Go to the logon security tab.
    Give the lang, client, username and password.
    Test connection and remote logon.
    Step 2)
    Goto IDX1.
    Create a new port.
    Give the port name.
    Give the client number for the R3 system.
    Select the created Rfc Destination.
    Step 3)
    Goto IDX2
    Create a new Meta data.
    Give the Idoc type.
    Select the created port.
    Steps for R3.
    Step 1)
    Goto SM59.
    Create new RFC destination of type 3(Abap connection).
    Give a suitable name and description.
    Give the Ip address of the XI system.
    Give the system number.
    Give the gateway host name and gateway service (3300 + system number).
    Go to the logon security tab.
    Give the lang, client, username and password.
    Test connection and remote logon.
    Step 2)
    Goto WE21.
    Create a port under transactional RFC.(R3->XI)
    Designate the RFC destination created in prev step.
    Step 3)
    Goto SALE.
    Basic settings->Logical Systems->Define logical system.
    Create two logical systems(one for XI and the other for R3)
    Basic settings->Logical Systems->Assign logical system.
    Assign the R3 logical system to respective client.
    Step 4)
    Goto WE20.
    Partner type LS.
    Create two partner profile(one for XI the other for R3).
    Give the outbound or inbound message type based on the direction.
    Step 5)
    Not mandatory.
    Goto BD64.
    Click on Create model view.
    Add message type.
    Step 6)
    Goto WE19
    Give the basic type and execute.
    fill in the required fields.
    Goto IDOC->edit control records.
    Give the following values.(Receiver port,partner no.,part type and sender Partner no. and type)
    Click outbound processing.
    Step 7)
    Go to SM58
    if there are any messages then there is some error in execution.
    Goto WE02.
    Check the status of the IDOC.
    Goto WE47.
    TO decode the status code.
    BD87 to check the status of IDOC.
    In case if not authorized then go to the target system and check in SU53, see for the missing object
    and assign it to the user.
    for scenario reffer link
    Configuring JDBC Connector Service To Perform Database Lookups
    http://searchsap.techtarget.com/tip/0,289483,sid21_gci1246926,00.html
    Configuration of JDBC Adapter for SQL Server
    JDBC Driver = com.microsoft.jdbc.sqlserver.SQLServerDriver
    Connection = jdbc:microsoft:sqlserver://hostname:<port>;DatabaseName=<DBName>
    UserID and Password
    Configuring the Receiver JDBC Adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/b0/676b3c255b1475e10000000a114084/content.htm
    hope this helps you
    Regard's
    Chetan Ahuja

  • Multiple statements in jdbc sender

    Is this possible to execute multiple statement in one sigle call, if it is JDBC sender?

    Hi,
    You can do it calling a stored procedure which execute your multiple statements.
    Regards,
    Carme.

  • JDBC Adapter - Multiple Resultsets

    Hello,
    Does anyone know if the JDBC adapter can return multiple resultsets?
    So something like the following JDBC Code:
    CallableStatement cstmt;
    ResultSet rs;
    int i;
    String s;
    cstmt.execute();       //Call the stored procedure      
    rs = cstmt.getResultSet(); //Get the first resultset
    while (rs.next()) {
    i = rs.getInt(1);                          System.out.println("Value from first set = " + i); 
    cstmt.getMoreResults();//Point to the second resultset  rs = cstmt.getResultSet();// Get the second resultset
    while (rs.next()) {
    s = rs.getString(1);                 
    System.out.println("Value from second resultset = " + s);
    Greetings,
    Bart

    Hi Bart,
    sure you can select more than one table either with Stored Procedue or with Query Statement for example (also if you concate more than one SQL statement) like:
    update table1 set STATUS = 4 where STATUS = 3 select *
    from table1 bk inner join table2 on (KEY = BZ_KEY) where KEY = 449070
    - or you create an View onb DB side that makes all of your Data selection:
    select * from view where status = 4
    - but you also can use stored procedure - in my opinion the most powerfuel tool...
    If their is something left -keep asking
    Regards Matt

  • JDBC  - Connecting Multiple Databases

    Hi JDBC's
    I would like to know if it is possible to retrive a data from different tables and from different databases using a single query, which mean can I retrive data from multiple tables multiple databases in a single JDBC connection?
    If not, How do I implement it?
    Any Ideas or please point me to any related solution if you have.
    Thanks.

    Although theoretically possible in fact a single JDBC connection cannot work with several databases. To implement this feature somebody has to write another aggregating JDBC driver which parse SQL statement and work with other databases in background. I like this idea, but currently there is no such driver available.
    Scriptella ETL (http://scriptella.javaforge.com) offers an interesting solutions for cross-database operations. See example on how -to copy a table from oracle to hsqldb: http://snippets.dzone.com/posts/show/3511
    If you want to join 2 tables from different databases and copy the result to a third database use the following code:
    <query connection-id="db1">
    SELECT * FROM Table1
    <query connection-id="db2">
    SELECT * FROM Table2 WHERE Table2_ID=?Table1_ID
    <script connection-id="db3">
    INSERT INTO Table3 VALUES (?rownum, ?Table1_Field, ?Table2_Field);
    </script>
    </query>
    </query>
    Message was edited by:
    ejboy

  • JDBC Receiver - Multiple rows Update

    I have an interface the incoming message contain multiple columns and it has to be updated using a JDBC Receiver Adapter with its key values.
    Can we send multiple rows in a single JDBC Update Statement.
    Please advise.

    Sebin,
    No ,it's not possible to have multiple rows in single update statement. Rather you can duplicate the segment at Statement level and do the update.
    Please refer http://help.sap.com/saphelp_nw70/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    raj.

  • How to use Native SQL statement in JDBC receiver interface

    Dear All,
    Can any one please help us in using Native SQL statement in a JDBC receiver channel. The reason why I need to use Native SQL statement instead of standard XML structure is that I need to execute a dynamic SQL query in third party database system lke:-
    Select Field1 Field2 from TABLE Where Field3 like "%Name'
    I expect the the response in the form of XML file which I can pick up using synchornous interface as mentioned on help.sap.com:-
    http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/frameset.htm
    The value for %Name can change dynamically according to the transaction and hence cannot be inluded as a KEY element in standard XLM structure,
    Hence I need to know:-
    1. What message mapping I should use in case if I have to use Native SQL statement.
    2.What operation mapping I should use in case if I have to use Native SQL statement.
    If guess correclty I may have to use Java mapping to do the above activities. Hence I want to know
    3 .How do to go about it to do the Java mapping.
    Thanks
    Ameet

    >
    Ameet Deshpande wrote:
    > Dear All,
    >
    > Can any one please help us in using Native SQL statement in a JDBC receiver channel. The reason why I need to use Native SQL statement instead of standard XML structure is that I need to execute a dynamic SQL query in third party database system lke:-
    >
    > "
    > Select Field1 Field2 from TABLE Where Field3 like "%Name'
    > "
    > I expect the the response in the form of XML file which I can pick up using synchornous interface as mentioned on help.sap.com:-
    >
    > http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/frameset.htm
    > http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/frameset.htm
    >
    > The value for %Name can change dynamically according to the transaction and hence cannot be inluded as a KEY element in standard XLM structure,
    >
    > Hence I need to know:-
    >
    > 1. What message mapping I should use in case if I have to use Native SQL statement.
    > 2.What operation mapping I should use in case if I have to use Native SQL statement.
    > If guess correclty I may have to use Java mapping to do the above activities. Hence I want to know
    > 3 .How do to go about it to do the Java mapping.
    >
    > Thanks
    > Ameet
    You can use a stored procedure, and call it from jdbc receiver adapter.
    I also solve this issue, with a DBLookup in message mapping. You can refer to my blog, and this usefull 3d:
    http://simonlesflex.wordpress.com/2010/12/07/pi-oracle-dblookup/
    /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer
    /people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler

  • Execution time difference between SELECT & UPDATE statement in JDBC Sender.

    Hi Experts,
    In my scenario, I have used the JDBC Sender Adapter with the SELECT and UPDATE statement.
    Now the problem is in between the execution of Select and update statement, few more entries are coming in the same DB Table.
    So result of this is updation take place for those entries which are not even picked up by the select statement.
    Can we avoid this execution time difference between the SELECT & UPDATE statemet on JDBC Sender side???
    Thanks & Regards
    Jagesh

    Hi
    Use serializable option in additional parameters, now all new entries would also be updated.

  • Update- statement in JDBC sender Adapter

    Hi ,
    I have a requirement where I am trying to fetch data from ODS based on some flag and immediately I want to update the flag status . So I used selected and update in JDBC sender adapter .
    But I have one question , in the small timeframe where  XI has done a select and just before  XI could  issue the update statement  if a new record is added to ODS . Then  that new record will also get updated though it wasnot selected in select statement .
    Can someone let me know how to overcome this problem ; as I want to make sure I update only those recrods which are selected in select statement ??
    Thanks & Regards,
    Suvarna

    Hi,
    Check out the following thread. It gives the exact answer to this question.
    JDBC Sender Update Query
    One of the replies in the above thread:
    I put in an OSS note asking this exact question with your specific example, and got a reply. I was referred to OSS note 0000831162, where it is explained very unambiguously that the SELECT and UPDATE queries are run in the same transaction.
    Regards,
    P.Venkat
    Message was edited by:
            Venkataramanan

Maybe you are looking for

  • Supplier wise budgeting

    can make budget supplier wise in 11i. or is there any module which supports to Supplier wise budgeting please reply at earliest. Thanks

  • Help for a query to add columns

    Hi, I need for a query where I should add each TableC value as an additional column. Please suggest... I have 3 tables (TableA, TableB, TableC). TableB stores TableA Id and TableC stores TableB Id Considering Id of TableA. Sample data TableA     :   

  • Re: cx_Oracle DLL load failed

    I am having a problem with cx_Oracle module for Python: I have multiple Oracle Clients installed. I am only interested in accessing the 10g with Python. I'm running Python 2.7.2 (python-2.7.2.msi) I've installed cx_Oracle for Python 2.7 and Oracle 10

  • Unicode Text Extract

    It looks this problem is not uncommon... I have a PostScript file that is generated by a 3rd party product. Distiller converts it to PDF, but I cannot search or copy a text. It looks this is because the ToUnicode CMap information is not readily avail

  • Conference mic suggestions

    I'm looking for some recomendations on a mic that would work well for a conference room environment. I have G4 with an iSight camera setup in our conference room. I want to be able to give presentations to people in the conf room from remote location