IDOC to JDBC in 7.1

Hi experts,
We are doing a IDOC to JDBC scenario in PI7.1 to insert records into AS/400 system from ECC6.0.
From ECC 6.0 iDOC is coming into PI perfectly but we are unable to insert records into AS/400 database.
Can anyone give the correct steps, links in PI7.1 for this purpose?
Rgds
Kishore

Hi,
  First check for the JDBC Driver installation and check the JDBC structure you have mentioned.
Statement and Action should be given correct.
can you provide me the target structure, so that i can check and find the fault.
Thanks,
Srikanth

Similar Messages

  • Pass system ack of JDBC adapter to ERP in IDoc - XI - JDBC scenario

    Dear all,
    i have an IDoc -> XI -> JDBC scenario (without using ccBPM). In the standard way the ERP system, sending the IDoc waits for an application acknowledgement. However the JDBC adapter is only capeable to send system acknowledgements.
    Is there a way to pass these acknowledgements to the IDoc status record?
    In help.sap.com (http://help.sap.com/saphelp_nwpi71/helpdata/en/ab/bdb13b00ae793be10000000a11402f/frameset.htm) under "IDoc Processing with the IDoc Adapter " there is a table that maps XI system/applic acknowledgement to IDoc status. So in my opinion the status record of my IDoc should at least chenge to the corresponding status for the system ack.
    Can anyone tell, if this is really working? What if I deactivate the acknowledgement request in the NOALE programm?
    In any case, can I achieve to transfer the system ack to the IDoc status without using a ccBPM?
    Many thanks and best regards
    Florian

    Is there a way to pass these acknowledgements to the IDoc status record?
    Without BPM, No.
    So in my opinion the status record of my IDoc should at least chenge to the corresponding status for the system ack.
    The ack referred here is related to idoc status whether it is properly reached till XI or not and not related to the JDBC ack.
    What if I deactivate the acknowledgement request in the NOALE programm?
    Then u won't have any ALEAUD message at sender R3.
    In any case, can I achieve to transfer the system ack to the IDoc status without using a ccBPM?
    No
    Regards,
    Prateek

  • IDoc to JDBC  and JDBC to IDoc Scenario

    Dear All,
    I am working on IDoc to JDBC and JDBC to IDoc Scenario.
    I have to send Idoc from SAP to Non SAP system(.NET application) i almost configured in XI but still i don't know when my INTEGRATION will INVOKE how my data will proceed from IDOC to Oracle database(Through JDBC) and in case of revese how and when Data flow will start.
    Does anyone have completed STEP by STEP scenario document for this?
    How my Idoc will sent to XI?
    How XI will pick up data from IDoc?
    How XI will Convert data to JDBC and UPDATE in Oracle Database?
    And i reverse case(JDBC to IDoc) when my INTEGRATION will INVOKE?
    Where and When i can watch my process and data?
    How can i test the whole integration?
    I AM GETTING ERROR WHILE TESTING CONFIGURATION IN Integration Directory "Error while refreshing the XI runtime cache" and when i check this in SXI_CACHE  it gives me error
    "Unable to refresh cache "NO_BUSINESS_SYSTEM"
    "Error during last refresh to cache"LCR_GET_OWN_BUSINESS_SYSTEM - NO_BUSINESS_SYSTEM"
    Please solve all the above problems i will reward u points
    thanks,
    RP

    Hi,
    While we working on IDOC to JDBC interface..
    We have to deploy JDBC Drivers?
    Go through this links,
    /people/varadharajan.krishnasamy/blog/2007/02/27/configuring-jdbc-connector-service-to-perform-database-lookups
    http://searchsap.techtarget.com/tip/0,289483,sid21_gci1246926,00.html
    To install JDBC driver follow the how to guide.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-how-to-guides/how%20to%20install%20and%20configure%20external%20drivers%20for%20jdbc%20and%20jms%20adapters.pdf
    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.
    If the connection is not working find the correct port number.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40b92770-db81-2a10-8e91-f747188d8033
    JDBC- X I -  R/3 Scenario
    /people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
    /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30
    Please check the driver path as mentioned below.
    JDBC Driver : sun.jdbc.odbc.JdbcOdbcDriver
    Connection:jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=//location of DB table.mdb;
    No JDBC driver required.
    Receiver JDBC scenario MS access - /people/sameer.shadab/blog/2005/10/24/connecting-to-ms-access-using-receiver-jdbc-adapter-without-dsn
    follow this thread
    Re: Problem when connecting to MS Access through JDBC Adapter.
    SAP Note 850116 has details
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Configuring the Sender JDBC Adapter
    http://help.sap.com/saphelp_nw04/helpdata/en/1d/756b3c0d592c7fe10000000a11405a/content.htm
    Configuring the Receiver JDBC Adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/b0/676b3c255b1475e10000000a114084/content.htm
    Idoc Reveiver adapter..
    http://help.sap.com/saphelp_erp2004/helpdata/en/b9/c5b13bbeb0cb37e10000000a11402f/content.htm
    Thanks,
    Satya Kumar
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Edited by: SATYA KUMAR AKKARABOYANA on May 8, 2008 5:51 PM

  • IDOC to JDBC scenario in case of Cost Element Group IDOC.

    This is an IDOC to JDBC scenario.
    The Cost Element Group IDOC is having different segments. The main segment E1COGH (1...unbound) is consisting of different subsegment like E1OGS (0...unbound) & E1COGV (0...unbound). The main segment (E1COGH) along with subsegments E1OGS & E1COGV) is occuring more that 1 times. I have to insert data into the table, which we can do in single rows (no hierarchy  is possible in tables). I have used "use one as many" in message mapping. Now if E1OGS or E1COGV is repeating in a single E1COGH segment then we dont get any error. But if I duplicate the main segment then I am getting runtime exception.
    Please suggest about how to map in this case.

    In my scenario:
         E1COGH
         |
          -> E1COGS
             E1COGV
    where     E1CGH -> Main segment
         E1COGS & E1COGV -> sub segment
    E1COGH -> 1..unbound
    E1COGS -> 1..unbound
    E1COGV -> 1..unbound
    At the target side I have created two Statement Structure (ie.Statement & Statement_1) . One for E1COGS (ie. Statement) & the other for E1COGV (ie. Statement_1).
    Case 1 ->  If E1COGS is present in the main segment E1COGH then it is mapped AS IS.
    Case 2 -> If E1COGS is not present in the main segment E1COGH then it is mapped as blank.
    This will be mapped with Statement & in the absence of E1COGS this Statement structure is SUPPRESSED.
    Similarly,
    Case 1 -> If E1COGV is present in the main segment E1COGH then it is mapped AS IS.
    Case 2 -> If E1COGV is not present in the main segment E1COGH then it is mapped as blank.
    This will be mapped with Statement_1 & in the absence of E1COGV this Statement_1 structure is SUPPRESSED.
    All the elements of the segment E1COGH, E1COGHT & E1COGHR are replicated in all the rows for X (no. of occurance of E1COGS) + Y (no. of occurance of E1COGV).
    While testing in Message Mapping, I am able to get the output as for multiple occurence of E1COGS & E1COGV in a single E1COGH.
    But if I increse the occurence of E1COGH the it is giving the following error :
    Runtime exception during processing target field mapping /ns0:MT_Cost_Element_Group_Response/Statement/DBtablename/access/GROUPNAME. The message is: Exception:[com.sap.aii.mappingtool.tf3.IllegalInstanceException: Too few values in first queue in function useOneAsMany. It must have the same number of contexts as second queue.] in class com.sap.aii.mappingtool.flib3.NodeFunctions method useOneAsMany[com.sap.aii.mappingtool.flib3.CollapseContexts@51197231, , ]
    Please suggest how to map the occurence of E1COGH simultaneously with the occurence of E1COGS & E1COGV.

  • Mapping issue in idoc to JDBC scenario

    mapping issue in idoc to JDBC scenario
    source structure
    E1KNB1M
      BUKRS = 1000
    E1KNB1M
      BUKRS=  9000
    E1KNB1M
      BUKRS=  2000
    THE NODE E1KNB1M is repeated many times and the field BUKRS is also repeated with E1KNB1M as above
    TARGET field : ISFRANCHISE
    if any where value of BUKRS =9000 we have to pass Y to the target filed, else N
    if BUKRS = 9000   THEN ISFRANCHISE= Y
                   ELSE
                ISFRANCHISE=N
    I've done the mapping as below
    BUKRS = 9000--> IF THEN Y ELSE N--
    > ISFRANCHISE
    BUT everry time the target value is N only
    pl suggest
    rgds
    mojib

    mapped like this
    BUKRS--->SORT---->
                                                 EQUALS --------IF---THEN    Y
    9000------------------------>                                               ----------------->ISFRANCHISE
                                                                  ELSE   N
    context of BUKRS set to parent node
    its worked
    thanks to all for valuable suggestions
    rgds
    mojib

  • IDOC-XI-JDBC scenario,   jdbc sent too slow

    i have a IDOC-XI-JDBC scenario,
    the problem is that near 5 Lac IDOC is sent to XI, each IDOC is processes by an instance of the scenario, and the sent to the Database is too clow...means 4000 records per hour,
    can i configure the JDBC receiver adapter in a way, so that it becomes faster/more concurrent,

    Hey,
    First raise the issue to the  DBA he might help resolve the ISSUE more efficently.
    Secondly check in the JDBC adapter -> Adavance mode -> Disconnect from the data base after processing each message shouldn't be set.
    Even check with Database Transaction Isolation Level -> default is value of the connected database.
    <b>The isolation level  determines how transactions running in parallel can influence each other</b>
    http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
    Why not  the other way around > Collect multiple idocs in a file restrict maxium number of idocs to required value then send the file ?
    Stefan Grube Example:
    /people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm
    if it is with bpm then collect multiple idoc with occurance change and send them.
    <b>Cheers,
    *RAJ*
    **REWARD POINTS IF FOUND USEFULL <b>

  • Error in IDoc to JDBC scenario

    Hi friends,
        I am configuring an IDoc to JDBC scenario in XI.When I am testing the scenario in Test Configuration then it is getting processed successfully but when I am tseting the entire configuration then in sxmb_moni the following error is showing:
    "Error occurred during back-routing Error in communication channel". Please help as I am unable to understand the error.
    regards
    Debansu

    Hi Debansu,
    Please go through the link it may help to solve your problem.
    JDBC Adapter / Acknowledgements
    Error in back routing Error in communication channel
    Regards,
    Sridhar Goli
    Edited by: sridhar goli on Aug 11, 2008 11:35 AM

  • Message mapping issue in idoc to jdbc scenario

    We have a scenario of  idoc->XI-JDBC
    the below given segment may get repeated , as shown below ,
    E1EDP19[2]--idoc segment
       QUALF---003
       IDTNR---01000123(Bar Code No)
    E1EDP19[3]--idoc segment
       QUALF---003
       IDTNR---20500000000034(EAN No)
    Reqd mapping
    if QUALF=003
    THEN IDTNR----->Bar_code_Number_EAN
    Now IDTNR has to be mapped with Bar_code_Number_EAN for the segment which comes last
    Pl suggest how to map using graphical mapping for the above scenario.

    Hi Raj ,
    The current mapping works fine if the parent segment E1EDP01 is only one but if that gets repeated then the last value of IDTNR is getting populated in the target side, very clearly i m giving the source and target structure and the mapping done using the UDF
    Source structure
    E1EDP01
           E1EDP19[1]--idoc segment
                  QUALF---002
                  IDTNR---01000123(Bar Code No)
           E1EDP19[2]--idoc segment
                  QUALF---003
                  IDTNR---01000123(Bar Code No)
           E1EDP19[3]--idoc segment
               QUALF---003
               IDTNR---20500000000030(EAN No)
    E1EDP01
         E1EDP19[1]--idoc segment
                    QUALF---002
                    IDTNR---01000123(Bar Code No)
         E1EDP19[2]--idoc segment
                   QUALF---003
                   IDTNR---01000123(Bar Code No)
          E1EDP19[3]--idoc segment
                 QUALF---003
                 IDTNR---20500000000031(EAN No)
    E1EDP01
           E1EDP19[1]--idoc segment
                   QUALF---002
                    IDTNR---01000123(Bar Code No)
          E1EDP19[2]--idoc segment
                  QUALF---003
                  IDTNR---01000123(Bar Code No)
         E1EDP19[3]--idoc segment
              QUALF---003
              IDTNR---20500000000032(EAN No)
    Target mapping
    if QUALF=002
    THEN IDTNR--->Article_No this is the direct mapping so , no issues
    if  QUALF=003
    THEN IDTNR----->Bar_code_Number_EAN, now this IDTNR should get repeated every time  the segment  E1EDP01 gets repeated , currently only the last value form all the  IDTNR is coming to the target side.
    The current mapping works fine if the parent segment E1EDP01 is only one
    Target structure
    Access1
    IDTNR--> Bar_code_Number_EAN( value is 20500000000030)
    Access2
    IDTNR--> Bar_code_Number_EAN( value is 20500000000031)
    Access3
    IDTNR--> Bar_code_Number_EAN( value is 20500000000032)
    Current mapping
    If QUALF = 003
                    Then  QUALF ---->
                                                     mapBarCodeEAN---->Bar_code_Num_EAN
    If QUALF = 003
                    Then  IDTNR ---->
    Context of QUALF is set to E1EDP01
    Context of IDTNR is set to  E1EDP01
    thanks for your personalised help
    rgds
    mojib
    Edited by: mohammad mojib ur rahman on Apr 9, 2010 1:30 PM

  • Problem in Idoc to JDBC scenario(uses BPM)

    Hi
    I have a IDoc to JDBC scenario which also uses BPM.
    The JDBC adapter has to execute a Stored procedure on Sybase database.
    I work on XI3.0 SP14.
    When I am sending IDoc to XI it is failing in CALL adapter step.
    The error message is "Unable to convert sender service TruckLiftAccountUpdate to an ALE logical system".
    However this scenario is working in Production with same settings.But it is not working in Quality and it is giving the above error.
    Can any one help me in this.
    Thanks in advance.
    KP

    Thanks for your quick reply..
    All the settings are in place.
    Here the Idoc is coming to BPM and BPM cant able to execute the stored procedure.and we are getting the error from BPM to target system.
    Here error is unable to convert the sender service(from BPM service) to ALE
    logical system.
    same settings are there in Production but it is not working in QA.
    Thanks in adavnce,
    KP

  • IDOC - XI- JDBC

    Hi,
    I have scenario from IDOC to JDBC. My question is, can JDBC call be synchronous in this scenario, so I colud i 2. step update some Oracle table with new Vendor number. Second question is, is there on Internet some example of calling Oracle Customer function, or is it possible?
    thx
    mario

    Hi check this blog for synchronous JDBC call
    /people/siva.maranani/blog/2005/09/16/xi-how-to-on-jdbc-receiver-response
    BR
    Sameer

  • IDoc to JDBC scenario strange bahaviour

    Hi Experts,
    My Scenario is IDoc to JDBC,
    I am creating some vendor masters in ECC, CREMAS IDoc sent to PI, mapping everything executed perfectly but data not posted in to data base, it is taking min 20 mnts to post data.
    When I monitor communication channel it is initiated and status (Dlvg) but after 20 mnts only it is showing message data posted successfully in Data base.
    What I observed was in MONI, IDoc initial status shows still awaiting for acknowledgement, after 20 mnts status changed to Acknowledgement not possible, at this time data posted to ODS.
    Why this is happening, it is really strange behaviour.
    When I reprocess IDoc using WE19 without delay data posted to data base and IDoc status in moni " ack not possible.
    How to solve this issue.
    Toa a Thanks advance,
    Jam

    Hi,
    Please see the link, it might be useful to you.[Handle_Acknowledgements|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f6d2d790-0201-0010-9382-b50b499b3fbe]
    Regards,
    P.Rajesh
    Edited by: Rajesh_1113 on Apr 29, 2011 3:24 PM

  • IDoc to JDBC scenario - UDF

    Hi,
    Hope you all are doing well. I have an IDoc to JDBC scenario. The IDoc structure is as follows:
       <IDOC BEGIN="1">
          <Structure 1>
             <DEFINITION>xxxx</DEFINITION>
             <CREATE_DATE>20070706</CREATE_DATE>
          </Structure 1 SEGMENT="1">
          <Structure 2>
             <ELEMENT>xxx1</ELEMENT>
             <CREATE_DATE>20070719</CREATE_DATE>
          </Structure 2>
          <Structure 2>
             <ELEMENT>xxx2</ELEMENT>
             <CREATE_DATE>20070719</CREATE_DATE>
          </Structure 2>
          <Structure 3>
             <ELEMENT>xxx1</ELEMENT>
             <PROJECT>yyyy1</DEFINITION>
          </Structure 3>
          <Structure 3>
             <ELEMENT>xxx1</ELEMENT>
             <PROJECT>yyyy2</PROJECT>
          </Structure 3>
          <Structure 3>
             <ELEMENT>xxx2</ELEMENT>
             <PROJECT>yyyy3</DEFINITION>
          </Structure 3>
          <Structure 3>
             <ELEMENT>xxx2</ELEMENT>
             <PROJECT>yyyy4</PROJECT>
          </Structure 3>
       </IDOC>
    Structures 1, 2 and 3 are at the same level/hierarchy in the IDoc. Structure 3 contains the project name of records in structure 2. The requirement is that if the records in structure 2 have the create date as the current date then the corresponding project in structure 3 has to be passed on to the database by creating a statement. To do this, we need to check the date of the record in structure 2 and if the date is equal to the current date then we have to use the element in structure 2 to select the corresponding rows in structure 3 to be passed on to the database. The INSERT statements have to be created for each of the rows of Structure 3 to be passed on to the database.
    How do I achieve this?
    I tried using node and text standard functions functions but was unable to achive the objective. Can I use UDF to read the IDoc structures and determine the statements?
    regards
    Debansu

    Hi Debansu,
    Use this Queue type UDF
    public void UDF(String[] curDate, String[] Element_Str2, String[] date, String[] Element_Str3, String[] project, ResultList result, Container container) throws StreamTransformationException{
    for(int i=0; i<date.length; i++)
        if (curDate[0].equals(date<i>))
         for(int j=0; j<project.length; j++)
           if (Element_Str2<i>.equals(Element_Str2[j]))
              result.addValue(project[j]);
    Here first parameter is current date function, second parameter is 2nd structure element field, third parameter is date field from 2nd structure, fourth parameter is 3rd structure element field and fifth parameter is project field from 3rd structure.
    Regards,
    VR

  • IDOC to JDBC Scenario error

    Hi All,
    I am doing a IDOC to JDBC Scenario.I am done with IR and ID.
    The Table in the DB is TABLE1 with Field1 and Field2.
    Now when I run thescenario it throws an error ,
    2009-03-19 12:41:06 Success INSERT INTO  TABLE1 (Field1, Field2) VALUES (KM247850, FINJTIA)
    2009-03-19 12:41:06 Error Unable to execute statement for table or stored procedure. 'TABLE1' (Structure 'Statement') due to java.sql.SQLException: [EUDNT038]The name "KM247850" is not permitted in this context. Valid expressions are constants, constant expressions, and (in some contexts) variables. Column names are not permitted.
    But it has successfully generated the SQL Query which I think is perfect.
    But whats the error which follows that?
    How do I resolve it?
    Thanks,
    Venu

    Hi,
    It could be due to wrong structure of JDBC, compare your target structure with this blog..
    /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30
    Regards,
    Sarvesh

  • IDOC to JDBC scenario: Does INSERT command expect a result value?

    Hello,
    we have an IDoc-to-JDBC-scenario configured on our XI 3.0, which uses the INSERT command to put a dataset coming from R/3 into a SQL database. This works fine.
    Now a trigger has been activated on the database, which sets a flag to each dataset after inserting.
    Because of this a system error occurs in the Adapter Engine and I found in the AuditLog (logSQLStatement=true), that the INSERT command is processed correcty, but in the next step an error is shown up: 'SQLServerException. A result set was generated for update.'
    Could it be, that the trigger returns a result value, which can't be handled on the XI ?
    If yes, how can I solve this issue? I have read something about the different methods execute(), executeUpdate() and executeQuery(), but I don't know how and where this has to be configured...
    Thanks in advance,
    Juergen

    Hi Upendra,
    I got some more information from the database adminstrator:
    He used the following command 'exec xp_cmdshell @ExportCmd , no_output'
    whereas @ExportCmd contains the command.
    With the no_output option, the xp_cmdshell does not return a recordset.
    I hope this will be helpful to you.
    Grtz,
    Juergen

  • IDOC -to-JDBC Scenario for Purchasing Info Record  - Urgent !!!

    Hi All,
           I am working on IDOC-to-JDBC Scenario and i have no concepts about IDOCs. I know how to configure an IDOC in XI , but i have no idea how to start for it in SAP.
           Can anybody help me on how to find the INFREC IDOC in SAP, how to configure it , how to insert data into that IDOC and then finally how do we test that if its working or not .
    Thanks & Regards,
    Ruchi

    Hi All,
           I am working on IDOC-to-JDBC Scenario and i have no concepts about IDOCs. I know how to configure an IDOC in XI , but i have no idea how to start for it in SAP.
           Can anybody help me on how to find the INFREC IDOC in SAP, how to configure it , how to insert data into that IDOC and then finally how do we test that if its working or not .
    Thanks & Regards,
    Ruchi

  • IDOC to JDBC scenario-IDOC settings

    Hi all i m doing an idoc to JDBC scerio and i have configured the settings and trying to trigger an ido and see whether i am able to post the data into the Db or not but i cant see idocs in XI:these are the steps i follwed posted in earlier forums:
    •  Create an RFC destination to XI in the sender SAP system using SM59
    •  Create a transactional port to XI using the RFC destination created in the above step
    • Create a Partner agreement using transaction we20 in the sender SAP system
    • Create a logical system using transaction bd54 for the partner agreement created in the above step
    • Select an IDOC using transaction we19 and change the EDIDC header recipient port & LS name
    •  Create an RFC destination to the Sender SAP system using SM59
    • Create port to sender system using idx1 in the XI system for the RFC destination created in the above step
    • Create Metadata in idx2 transaction..
    I have done the above and trying to trigger an idoc in we19 by changing the control records...but  my idoc is not getting triggered.
    Did i miss any other configuration?Please guide me.
    also my guess is that i might have missed something in my partner profile config,
    i specified ordrsp msg type in o/b parameters,specfied the port,selected trasfer idoc immediatley option,specified process code..i guess thats about it
    Am i rite?Am I missing something.
    Thanks

    HI Aarthi,
    In WE19 while triggering Idoc, what are you getting ? ANy error..Is it created any Idoc number . If so go to WE02 and check the status ...
    If Idoc is triggered and it is not reached into XI, then you can check in SM58  for the status.
    TO cross check the configuration-
    /people/ravikumar.allampallam/blog/2005/02/23/configuration-steps-required-for-posting-idocsxi
    Also check how to guide for Idoc scenario.
    https://websmp106.sap-ag.de/~form/sapnet?_SHORTKEY=01200252310000071155&
    Regards,
    Moorthy

Maybe you are looking for