Regarding JDBC Adapter

Hello Experts,
    If i want to perform File to JDBC Scenario, Is it require any pre-requisite for JDBC Adapter configuration.
Thank you

Hi ravi kumar chandragiri  ,
The following websites will answer u'r question:
JDBC is a technical Adapter provided by SAP.
Configuring the Sender JDBC Adapter
http://help.sap.com/saphelp_nw04/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm
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
http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/6d36d51d-0b01-0010-b3aa-9cb313b63cf4
SAP XI Utilize SAP Adapters to connect to heterogenous systems
https://wwwn.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3fc4bd90-0201-0010-68bd-ab931b06f9c2

Similar Messages

  • Regarding JDBC Adapter in SAP XI

    Hi
    I have done one scenario in SAP XI using JDBC Lookup it is working fine thanks for all who were helped me ......
    I need a clarification on following
    What is
    Generic Lookup API
    Special Lookup API
    and while i am  configuring i have given
    Persistence : Local
    Confilct Resolution : Redo
    In what situation we will give  Presistence : Local and in what situation we will give Persistence : Database means i need to know where we will use LOCAL and where we will use DATABASE
    and what is the difference between REDO and ERROR...........?
    In Message Protocol we have two protocols
          XML SQL Format
          Native XML Format
    what is the difference between these two
    I have gone through some blogs which i got in my previous posts but i am not able to understand clearly..... can any one clarify my doubts please........?
    Best Regards
    Ravi Shanakar B

    Generic Lookup API
    In the case of generic access, before executing the lookup, developers first need to both build the payload that the adapter expects and parse the result payload themselves.
    To access an application system generically, developers use the SystemAccessor class. For generic calls, developers of a method must pass a stream with the payload, which is then sent to the adapter. The result of the call is a payload object, which you can use to both read the payload as a stream and parse the payload.
    The generic lookup API is part of the mapping API (see LookupService class in the Javadoc documentation). For more information about these APIs, see SAP Developer Network at https://www.sdn.sap.com/irj/sdn/javadocs
    You can obtain the schema to call an RFC by simply importing the RFC into the Integration Repository. (See Importing IDocs and RFCs.)
    Special Lookup API
    For access using the special lookup API, developers do not require any knowledge of the structure of the payload. Instead, they pass the API string commands that are to be executed in the application system called.
    Currently, there is one special lookup API for the JDBC adapter. To use this API, developers use the DataBaseAccessor class instead of the SystemAccessor class.
    The special lookup API is part of the mapping API (see the getDataBaseAccessor method of the LookupService class in the Javadoc documentation). For more information about these APIs, see SAP Developer Network at https://www.sdn.sap.com/irj/sdn/javadocs
    XML SQL Format
    Table values can be inserted, updated, or deleted in one or more tables. In the database, stored procedures can be called using transfer parameters. In the case of synchronous queries, results from database queries or return values of stored procedures can also be transferred.
    Native SQL String
    An arbitrary SQL statement is expected as the message content. This statement is transferred unaltered to the database for processing
    Please see the below link
    http://help.sap.com/saphelp_nw2004s/helpdata/en/cf/406642ea59c753e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
    Regards
    Chilla..

  • JDBC adapter performnce in PI

    Hi,
    Regarding JDBC adapter in PI 7.0 and performance I have below 2 queries:
    1. What are the different ways in which we can measure the performance of various components (IS, AE etc) in a JDBC scenario.
    2. How to determine what is the optimum number of JDBC calls that can be made in a specific time period without affecting PI performance.
    Appreciate your response on these queries
    Thanks,
    Girish

    Hi
    1. What are the different ways in which we can measure the performance of various components (IS, AE etc) in a JDBC scenario.
    It depends on various parameters for instance the kind of mapping involved (if it is xslt mapping time taken would be more than a graphical mapping), database you are trying to connect. In general there is a document on SDN that talks about the XI performance and tuning.
    2. How to determine what is the optimum number of JDBC calls that can be made in a specific time period without affecting PI performance.
    This would depend again on the database being used. Also various parameters in XI like "Disconnect from the DB after each message process".
    Regards
    Monika

  • JDBC adapter Commit/Rollback

    Hi Guys, I got a question regarding JDBC adapter auto commit. Hopefully you guys can help me :). Until now, when my XI calling a storedprocedure in ORACLE using JDBC adapter, it will automatically commit the calling. When i see my configuration for the JDBC adapter receiver, the checkbox for Enable Autocommit is thicked. My question is, is there anyway that we handle the commit or rollback ourself. How we can handle that? Is it from the BPM or just from the Configuration.
    Thank you very much in advance for all replies, advices and answer. Cheers guys..

    Hi
    Try this out
    You can programmatically set auto commit to true as in follows
    // Load the Oracle JDBC driver
    DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
    // Connect to the database
    // You can put a database hostname after the @ sign in the connection URL.
    Connection conn =
          DriverManager.getConnection ("jdbc:oracle:oci:@", "scott", "tiger");
    // It's faster when auto commit is off
    <b>conn.setAutoCommit (true); </b>
    // Create a Statement
    Statement stmt = conn.createStatement ();
    regards
    krishna

  • Regarding data integrity for XI file/jdbc adapter

    I have several questions about XI data integrity for file/jdbc adapter.
    Question 1 is: if the destinate file or DB is not reachable or other technical problems occur, do I have to send the message again or not?
    Usually we design  an bpm to comfirm whether the database or file is completed according to a response message. But it's a little complicated.
    Question 2:when I use jdbc send adapter and configure select and update SQL clauses. Does XI only update the records which it select automatically? or Select and Update don;t have any relationship?
    Very appreciated if you have any experience to share me.
    Regards
    Shen Peng

    Hi
    Question 1 is: if the destinate file or DB is not reachable or other technical problems occur, do I have to send the message again or not?
    If the DB is not reachable then message will be found in the inbound side. you can found them in the adapter. Goto RWB -> Message monitoring -> select status System error and search . there you will find your messages. select you message and resend them
    Question 2:when I use jdbc send adapter and configure select and update SQL clauses. Does XI only update the records which it select automatically? or Select and Update don;t have any relationship?
    XI never does updation automatically, Update is done only based on the SQL update query which you have written in the  sender channel.
    SELECT statement is used just to pick the values from the table and based upon the query which you want to UPDATE in SQL . data is updated
    Regards,
    sandeep

  • Regarding JDBC Reaciver Adapter

    Hi Everyone,
    After Mapping in IR do i need to write any SQL Statements in ID.Some one can help me in these.
    Regd's
    Raj

    Do have a look at these links :
    http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    Also this weblog - /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30

  • 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

  • JDBC Adapter - Established database connection failed

    Hi Guys,
    we have installed the JDBC Adapter based on the How To Guide and we checked after the installation the  Libaries :Cluster --> Server --> Libraries --> com.sap.aii.af.jmsproviderlib and the box Box "JARs Contained" was filled.
    So in my point of view we have done everything right during the installation.
    Now the developer tested theJDBC Adapter and he comes back with following Error:
    Attempt to establish database connection failed with SQL error com.sap.aii.adapter.jdbc.sql.DriverManagementException: Cannot establish connection to URL "jdbc:microsoft:sqlserver://xxx.x.xx.xxx:1433; databaseName=CZZ03;":ClassNot FoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
    Do you have any ideas?
    Regards
    Markus

    Hello Markus,
    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
    Thanks,
    Satya Kumar
    Reward Points If it is Useful..

  • CLOB Datatype with JDBC Adapter

    Hi,
    we try to fill a Clob Datatype to JDBC Database.
    We try 2 ways with the JDBC Adapter:
    action="SQL_DML" with an SQL Statment and $placeholders$
    But how can i say the key element that it is a CLOB type?
    He used this a VARCHAR and there a not more than 4k Chars allowed.
    second way is action="EXECUTE" to call a Stored Procedure, but there we got the error that CLOB type is an Unsupported feature.
    Any Idea?
    Regards,
    Robin
    Message was edited by: Robin Schroeder

    Ok i will check this...
    But i'm right when i say that the only way to fill CLOB Type is to use a Stored Procedure ?
    or is there any possibility to do this with action="SQL_DML" ?
    Regards,
    Robin

  • Reg: How to Stop Polling of JDBC Adapter without Scheduling the adapter

    Dear Gurus,
    Here I am having one requirement. My clients wants to send data from JDBC adapter (ORcale System table) to R3 system via RFC.
    His Requirement::
    1. He is not telling the time of data flow from Oracle server so that based on that we can schedule the adapter in the Communication Channel monitoring (Availablitiy Time Planning) or Else we can Schedule by deciding the setting of the polling interval time.
    2. He is telling that When ever he waants to send the data he will place one dummy file in the File Adapter FTP location so that it will became an Indication for u to poll the jdbc adapter and to transfer the data to R3.
    3. Untill he keeps the file or gives indication he doesn;t want to communicate with Oracle server due to some security and it s a most important data base he doesn't want to disturb that Oracle Server as so many business are running  on that.....
    We Proposed::
    1. Atleast you need to tell the scheduling time or poll interval time so that we can schedule our adapter.
    but he s not accepting for this
    2. Atleast U need to give access for Data base to enter one more extra field like STATUS CODE so that we will add one number and we keep on Update in the Update table and based on that Update table statement it will poll.
    but he s not even accepting for this
    3. Finally we prposed that to create another table in the Oracle SYstem as Dulplicate Table which is similar to Standard Orginal table when ever he wants to pick the data please keep that data in this Duplicate TABle so that JDBC adapter will pick the data from thsi TABLE instead of picking the data from that standard table so that it will not effect any standard table data in the table.
    but he s not even accepting for this
    We have done some R & D:::
    1. WE approached even through BPM and via switch conditions is one scenario
       FILE RECEIVE >SWITCH CONDITION> RECEIVE AND SEND or else EXIT
    2. Using correlation in anotehr scenario means correlating File adapter and JDBC and based on one dynamica value it will goes to SEND STEP ( RECE IVE --> RECEIVE --> SEND STEPS )
    Even though we know this...concept that...we jsut tried::
    In BPM we can control the flow in XI 3.0 but we cannot Stop the Polling of JDBC adapter at backend because one the data comes from FILE adapter it will keep on HOLD untill it receives the JDBC from Oracle then based on the condition or Correlation it will goes futher SEND step means after that file adapter is picking file or not ...what ever it may be JDBC will polls at backend and brings that data to BPM"
    Hence sugest me How to Stop Polling of JDBC Adapter without Scheduling the adapter or else using STATUS CODE Update statements in JDBC Tables 
    Regards:
    Amar Srinivas Eli

    Hi! All,
    Finally I decided to do the scenario in two steps:
    1: FILE REQ --> JDBC REQ -->JDBC RES --> FILE RECV
    2: FILE RECV --> RFC
    But I am getting issue while doing first scenario
    Desgn :
    I have created 2 Synchronous interfaces :
    1) FILE 2 JDBC REQ
    In this a) out put message is FILE  Req
              b) Input msage:; FILE RES
    2} JDBC2FILE RECV
            a) Output mesage;; JDBC REQ
            b) Input Msge :: JDBC Response
    Mappings:
    1) File REQ-->JDBC REQ
    2) JDBC RES-->FILE RES
    Interface mappings:
    1: FILE 2 JDBC REQ--> JDBC 2 FLE RECV
    CONFIGURATION ::
    1: One Seder File CC
    2: Two reciever CC's one is for JDBC RECEIVER and other s FILE RECEIVER
    3; One Sender Agreement
    4: 2 Recver agreements
    5: One Interface Determination and
    6: One RECCV Determination
    My Question;;
    1. First let confirm whether my development steps are right or not ?
    2: Another thing s I am not sure reg Configuration Steps means
    whetehr one interface determination and one Receiver Determinations are required or not as these are synchronous Interfaces
    3: main Issue is::::
    If my scenario s FILE2RFC2FILE then I will get RFC response automatically but here issue is this is JDBC
    My reqquirement is By sending one Field from fILE to JDBC REQ it needs to send entire TAbLE records as a Response to file as XML
    without having Sender JDBC how can I send the JDBC Res to FILE and If that is the case then again JDBC adapter is polling which is contradict to the client requuirement which i explained above.
    pleas suggest me the Detailed steps mainly Colloboration agreements and logical routings and
    also explain in detail if i can  go for BPM
    Also give cleear blogs but before giving make sure that it contains detailed screen shots because aIready gone thorugh
    Scenario File-JDBC-RFC
    File<-->JDBC Sync coomunication.
    https://www.sdn.sap.com/irj/scn/wiki?path=/display/xi/file-rfc-file(Without+BPM)
    /people/luis.melgar/blog/2008/05/13/synchronous-soap-to-jdbc--end-to-end-walkthrough
    Regards::
    Amar Srinivas Eli

  • How to insert a NULL value in SQL using JDBC Adapter

    Hi All,
    I have a File -> JDBC scenario.
    In the File and in the SQL table  I have a column called "MR_DATE" that needs to be mapped
    I have to do the following:
    If MR_DATE is NOT equal to "00000000"
             then pass MR_DATE to SQL table
    else
              set the MR_DATE column in the table as NULL.
    Please suggest
    regards,
    Piyush

    Hi Piyush,
    In the receiver JDBC adapter select the option Interpretation of Empty String Values as NULL.
    Pass date as empty, it will be interpreted as NULL by adapter and inserted in database.
    Regards,
    Gautam Purohit

  • Error while executing the stored procedure through sender JDBC adapter

    Hi All,
    I am getting below error while executing the stored procedure through sender JDBC adapter.
    Database-level error reported by JDBC driver while executing statement 'exec SapgetNextEntity 'SalesOrder''. The JDBC driver returned the following error message: 'com.microsoft.sqlserver.jdbc.SQLServerException: The statement did not return a result set.'. For details, contact your database server vendor.
    what is the problem? any idea to anyone...
    regards
    Ramesh

    hi Dharamveer,
    I am not getting below statement for your reply
    Try to use Refrence Cursor it will return u reference of resultset.
    I mention SP like this
    exec SapgetNextEntity 'SalesOrder'
    SapgetNextEntity -
    > SP Name
    SalesOrder----
    > Parameter I am passing...
    regards
    Ramesh

  • Error while retrieving data from sql using jdbc adapter

    hi all,
    i m working on one scenario where i m sending data using HTTP and receiver is jdbc adapter which is retrieving me data from sql server.
    i have checked the structure both for req and res.
    i m getting this error
    <SAP:Error>
    <SAP:Category>Application</SAP:Category>
    <SAP:Code>MAPPING.EXCEPTION_DURING_EXECUTE</SAP:Code>
    <SAP:P1>com/sap/xi/tf/_INF57285_DB_HR_RES_</SAP:P1>
    <SAP:P2>com.sap.aii.utilxi.misc.api.BaseRuntimeException</SAP:P2>
    <SAP:P3>RuntimeException in Message-Mapping transformatio~</SAP:P3>
    <SAP:Stack>During the application mapping com/sap/xi/tf/_INF57285_DB_HR_RES_ a com.sap.aii.utilxi.misc.api.BaseRuntimeException was thrown: RuntimeException in Message-Mapping transformatio~</SAP:Stack>
    </SAP:Error>
    can somebody help me with this.
    Thanks & Regards
    Aruna

    thnks bhavesh i think i made it that way
    JDBC REQ  
      <ns:INF57285_DB_Request xmlns:ns="http://www.infosys.com/xi/training/hyd/57285">
      <Employee>
        <EmpDetails action="SELECT">
          <table>EmpDetails</table>
          <access>
            <Name />
            <EmpId />
            <Band />
            <Salary />
          </access>
          <Key>
            <EmpId>57285</EmpId>
          </Key>
        </EmpDetails>
      </Employee>
    </ns:INF57285_DB_Request>                        
      JDBC RES
    <ns:INF57285_DB_Request_response xmlns:ns="http://www.infosys.com/xi/training/hyd/57285">
      <Employee_response>
        <row>
          <Name>aruna</Name>
          <EmpId>57285</EmpId>
          <Band>A</Band>
          <Salary>4675776</Salary>
        </row>
      </Employee_response>
    </ns:INF57285_DB_Request_response>
    my hr req is which i mapped with DB req
    <ns:INF57285_HR_Req xmlns:ns="http://www.infosys.com/xi/training/hyd/57285">
      <REQUEST>
        <EmpNo>57285</EmpNo>
      </REQUEST>
    </ns:INF57285_HR_Req>
    my hr res is which i mapped with DB res
    <ns:INF57285_HR_Res xmlns:ns="http://www.infosys.com/xi/training/hyd/57285">
      <response>
        <row>
          <Name>aruna</Name>
          <Empld>57285</Empld>
          <Salary>4675776</Salary>
        </row>
      </response>
    </ns:INF57285_HR_Res>
    and interestingly i am not getting any error in sxmb_moni
    it's not showing any error
    plz suggest me something wht to do ....
    thnks & regards
    Aruna

  • Need to connect to Oracle 11g using PI 7.1 JDBC adapter

    Hi All,
    I am trying to configure a JDBC adapter to connect Oracle 11g. For this I need to know the driver,jar and connection URL details.
    Can anyone please provide the above information?
    Please correct me if my details are wrong :
    JDBC Driver : oracle.jdbc.driver.OracleDriver
    JAR : ojdbc5.jar
    URL : jdbc:oracle:thin:@localhost:1521:ora11i
    Regards,
    Prakash.

    Yes i knew how to deploy the jars using SDA.
    I will try to deploy the above jar (ojdbc5.jar ) and try to connect to Oracle 11g with URL & Driver classname.
    If I face any problem then i will get  back to you.

  • How to call Packaged Stored Procedure in JDBC Adapter?

    hello frnds,
    I m working on a SAP R/3 -> XI -> Oracle scenario. Here on receiver side i m using JDBC Adapter in which i m using a stored procedure.
    I have my stored procedure in a Package. Example : package "PKG_SPARES_VOR_UPLOAD" and in that stored procedure "pr_spares_vor_po_hdr_upload".
    i have checked that if i write this stored procedure outside the package then it works fine... but if i put it into the package then it is giving me error that ....
    " Receiver Adapter v2112 for Party '', Service 'BS_ORADEV':
    Configured at 2006-08-16 10:12:14 GMT+05:30
    History:
    - 2006-08-16 11:02:04 GMT+05:30: Error: TransformException error in xml processor class: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PR_SPARES_VOR_PO_HDR_UPLOAD' (structure 'statement'): java.sql.SQLException: ORA-06550: line 1, column 7:
    PLS-00201: identifier 'PR_SPARES_VOR_PO_HDR_UPLOAD' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored ".
    please help me out with this problem.
    Thankx,
    Regards,
    Audumbar

    Hi,
    I have the same problem to call a stored Procedure in a Package.
    If my procedure is not in a package, everything is right.
    And I musn't indicate all the name, because I musn't put '.' in the name (of the procedure), in my DT on XI.
    It would be so nice to have an answer.
    Rémi

Maybe you are looking for