JDBC Sender Adapter to Oracle Server
Hi Friends,
Iam using JDBC Sender Adapter to connect to Oracle Server. I have mentioned all the parameters in the Configuration(sender communication channel) correctly.My Adapter Monitoring in RWB shows a message that "Processing finished successfully"...But I cannot see the data in SXMB_MONI. I mean the data is not getting picked from the Database..I have worked on the similar scenario previously and it was working fine...
I have specified the datatype structure correctly.
resultset
>row
>>field1
>>field2
wat is the problem.
regards,
raju...
Hi,
Can you check the following,
1. Check the SELECT query in your Sender JDBC adapter. Does it actually return any rows?
2. The values enterd for Documentname and DocumentNamespace in your Sender JDBC adapter. You have to enter the name of the Datatype and the namespace in these fields.
3.Have you enterd these details while doing the adapter configuration,
<b>jdbc:oracle:thin:@<IP adress>:<listener port>:<instance name (database name)>
Driver oracle.jdbc.driver.OracleDriver</b>
Regards,
Bhavesh
Similar Messages
-
In JDBC Sender Adapter , the server is Microsoft SQL .I need to pass current date as the input column while Executing stored procedure, which will get me 10 Output Columns. Kindly suggest me the SQL Query String , for executing the Stored Procedure with Current date as the input .
Hi Srinath,
The below blog might be useful
http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/03/06/executing-stored-procedure-from-sender-adapter-in-sap-pi-71
PI/XI: Sender JDBC adapter for Oracle stored procedures in 5 days
regards,
Harish -
JDBC Sender adapter - Oracle - Stored Procedure - Error
Hello,
Need few clarifications on JDBC sender adapter and stored procedures when connecting to Oracle DB.
My scenario is, Oracle to SAPBW. So in sender JDBC adapter, we have used a SP having multiple SQL statements it, esp. one of the SELECT statment having Joins on a table and View.
My questions are,
1) Is it possible to have more SQL statements in SP for Sender JDBC?
2) Is the SP of Oracle DB returns resultset or cursor?
I have tried in searching the forum perticularly for connecting to Oracle as Sender and below like said that there is a limitation of XI JDBC when connecting to Oracle.
Executing an Oracle Stored Procedure from Sender JDBC adapter
So please clarify the doubts and help me.
With regards,
JilanHi Jilan,
Unlike what was mentioned in the link given by you that oracle returns cursor and not resultset is not completely true. It may be difficult but certainly not impossible.
Refer : http://www.enterprisedt.com/publications/oracle/result_set.html
regards
joel -
JDBC Sender Adapter - Restrict number of rows fetched, Oracle
Hi,
Is it possible to restrict the number of rows fetched by the JDBC Sender adapter at each run? What would the appropriate Select and Update statements be to make sure a limited number of rows are selected and flagged as processed?
We are connecting to a Oracle RDBMS.
//Johanhi,
have a look at this info:
about oracle and limiting number of rows
http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a> -
PI 7.1 JDBC sender adapter huge load from DB select
Hi,
We have the problem that the JDBC sender adapter is selecting a huge amount of data from a Oracle DB. The Adapter seems to be able to cope the load but when sending to the integration server it causes problems. We found values to adjust but I dont think increasing them is a good solution.
My question is:
Is there any way to send the data in blocks with using the PI standard JDBC adapter ?
Thank you and regards,
AndreasHi,
You can use the below parameter in JDBC sender.
Specify additional Parameter Names and Parameter Values in the table.
Due to messages of large size it may cause issue
Following are the parameters to be set in the table to limit the message size per polling:
● msgLimit :
● maxMsgSize : SAP note 1253826.
● maxRowSize : SAP note 1253826.
Additional parameters are published in SAP Note 801367.
Refer the link.
Defining Additional Parameters in Advanced mode
http://help.sap.com/saphelp_nw73/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm -
JDBC Sender Adapter - No Namespace found
Hello
I am currently using PI 7.1. The scenario is JDBC to ECC ABAP Client Proxy. When the JDBC Sender Adapter sends the data to the Integration Server, the root element does not contain the xmlns attribute. This root element is constructed from the Document Name of the JDBC Sender Adapter attribute.
I am getting the following error:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Request Message Mapping
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>Application</SAP:Category>
<SAP:Code area="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>
<SAP:P1>com/sap/xi/tf/_MM_HIS_Material_Consumption_</SAP:P1>
<SAP:P2>com.sap.aii.mappingtool.tf7.IllegalInstanceExcepti</SAP:P2>
<SAP:P3>on: Cannot create target element /ns0:MT_Material_</SAP:P3>
<SAP:P4>Consumption_ECC/Material. Values missing in queue~</SAP:P4>
<SAP:AdditionalText />
<SAP:Stack>Runtime exception occurred during application mapping com/sap/xi/tf/_MM_HIS_Material_Consumption_; com.sap.aii.mappingtool.tf7.IllegalInstanceException: Cannot create target element /ns0:MT_Material_Consumption_ECC/Material. Values missing in queue~</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
When I perform a test at RWB, the message gets posted successfully. Once posted, the payload of this message contains the xmlns attribute.
Here is the root element from both the instances:
From RWB: <ns0:MT_Material_Consumption_JDBC xmlns:ns0="http://xxx.com/xxx/finance">
From JDBC Adapter: <ns0:MT_Material_Consumption_JDBC>
Could you please let me know, what has to be done to obtain the xmlns in the sender payload?
Thank you in advance.
John Jeyaraj
Edited by: John jeyaraj on Apr 7, 2011 8:22 AMHi Hiren
When I test the MM without the xmlns attribute, I get the following error:
The prefix "ns0" for element "ns0:MT_Material_Consumption_JDBC" is not bound.
When I add the xmlns attribute, the mapping is successful.
Thanks
John -
Problem with JDBC Sender adapter
hi guys!
I´ve problem in PI 7.0, with the JDBC Sender Adapter, execute select sentence and update status in Oracle database.
In RWB Message Monitoring and SXMB_MONI I can't see any message.
Someone have any idea how to fix it?
Thanks in advance.Hi David,
First check on the sender communication channel, if no data has been picked up by PI on channel,
then check the configuration of channel in the ID, especially select query.
If that is ok, then ask the sender application team(oracle database team) to run the query on their side
and to check if they are getting any data.
There could be the possibility of error in data also.
-Supriya. -
JDBC sender adapter outofmemory error
Dear friends,
We are getting following error on JDBC sender Adapter: Error during conversion of query result to XML: java.lang.OutOfMemoryError: Java heap space (failed to allocate 1073741848 bytes)
I have read blogs where there have been suggestions to limit the amount of data picked by using WHERE condition and not using SELECT *
In our scenario we are creating GL IDOCs . In SQL when PI picks it up it needs to get all the corresponding Header and line items together. We cannot randomly pick 1000 records at a time. The SQL table has 500,000 rows in the following format
H H H L1 L1 L1
H H H L2 L2 L2
H H H L3 L3 L3
H1 H1 H1 L1 L1 L1
H1 H1 H1 L2 L2 L2
H1 H1 H1 L3 L3 L3
Please let me know how can we solve this issue?
Thank you,
Teresa
Edited by: Teresa lytle on Sep 27, 2011 3:13 PMIf you are using oracle database, uses ROWNUM field to fetch first set of records and you can update those records with the flag as true.
similarly If you are using MS SQL database, uses SELECT TOP command to fetch first set of records and you can update those records with the flag as true.
Like File/FTP adapter, the next poll interval would be as scheduled. The Administrator can then alter the table contents, to ensure lesser no of records are picked up.
Here You need to limit the no of rows if you again face the problem. Please chec the SAP Note
https://websmp230.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=1296819 -
HI Friends,
I have configured the JDBC Sender Adapter with parameters as
Driver : oracle.jdbc.driver.OracleDriver
Connection : jdbc:oracle:thin:system:netweaver:@172.25.4.221:1521
But Iam getting an error in Componenet Monitoring:
<b>History:
- 2006-05-30 04:55:36 UTC: Error: Stopped unexpectedly - reconfigure and activate to continue processing. Error: java.lang.NullPointerException
- 2006-05-30 04:55:36 UTC: Processing started</b>
How to resolve this??
Regards,
RajuHi
Thanks for the reply.
I tried with <b>jdbc:oracle:thin:@172.25.4.221:1521:netweaver</b> and
<b>jdbc:oracle:thin:@172.25.4.221:1521:system</b>
Now Iam getting another error.
<b>Sender Adapter v2108 for Party '', Service 'TBIT40_XI_LEGACY_BS_04':
Configured at 2006-05-30 05:12:30 UTC
History:
- 2006-05-30 05:13:00 UTC: Retry interval started. Length: 20.000 s
- 2006-05-30 05:13:00 UTC: Error: Accessing database connection 'jdbc:oracle:thin:@172.25.4.221:1521:system' failed: DriverManagerException: Cannot establish connection to URL 'jdbc:oracle:thin:@172.25.4.221:1521:system': SQLException: Io exception: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=153093376)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
- 2006-05-30 05:13:00 UTC: Processing started</b>
Can U please solve it..
regards,
Raju -
JDBC Sender Adapter without polling?
Hi,
I need pick up some data from a Oracle 8.1 Database but I don't want to use a polling from a JDBC Sender Adapter. Because this impact the XI performance and we use several BPM's.
Any Ideas?Hi,
from SP19 you should be able to use
a scheduler with jdbc adapter but till then
you need to use some other solutions
maybe you can use a BPM which can be scheduled
(by any interface) and inside use receiver jdbc
adapter to do a select
or you can start the adapter manually whenever necessary....
Regards,
michal -
Hi,
Scenario: JDBC-XI-R/3
I am trying to run the JDBC sender adapter every 3 minutes based on the poll interval to select rows from Oracle db.
In the select and update statements when I use the rownum < '11' and flag condition (Y or N), then I see XI is picking up 10 rows in a two times and I see two parallel processes in SXMB_MONI.
I want XI to run only pickup 10 rows for every 3 minutes and update only 10 rows in Oracle to "N" from "Y".
When I take out the rownum condition from update I do not see this issue.
<u>Update statement:</u>
Update <TABLE> set status_flag = 'N' WHERE status_flag = 'Y' and rownum < '11'.
Can some body point me in the right direction ?
Thanks
SteveHi there,
See if this works. Though I never came across such a scenario, I can think what to be done in this case.
Create a staging table as same structure as from where our JDBC adapter is picking up the data currently.
Whrite a tigger(after delete) on staging table to call a stored procedure.
stored procedure will select the data from source table and insert them in to staging table (rownum<11) as well as update the flag column in source table.
Now load the staging table initially from source table with only 10 rows (one time process). Configure your JDBC adapter on staging table. In update sqlquery field of JDBC adapter write delete statement for all the data from staging table to be purged, as there will not be more than 10 rows at any time and after each time the adapter supplied Delete statement will purge the data so you dont have to worry about selecting 10 rows or updating 10 rows from JDBC adapter. As every time the trigger after delete statement will fire and load only 10 rows from source marking those 10 rows as read_already status.
NOTE: for Calling stored procedure from trigger follow your database SQL reference documentation.
Thanks.
-Nilkanth. -
JDBC Sender adapter - message split
All,
Scenario:
Oracle Stage table - PI - ECC or R3, (depending on a particular value the record goes to ECC or R3 to post a transaction).
After the record is picked, flag is updated and depending on posting the transaction on SAP, the flag is updated in the stage table.
With the JDBC sender adapter, multiple records are picked up depending on the select statement in the sender comm channel.
I have the following rek.
Now the message is in the AE, before the message enters IE, I would like to split the messages
This would help me in resubmitting the failed (failed to post the transaction) records.
Is there any way that I would be able to do it?
Any guidence...
regHi Naveen,
An alternative way , instead of splitting the multiple record being picked up in a single poll, you can control the number of records being picked. By using the following statement in the sender cc
SELECT * FROM .... UPTO ROWS < 20
so that only 20 records are picked at a time. and resubmit the set of 20 in case it fails.
You can go for this method if it suits your requirement.
Regards,
Shamly -
Challenging issue with JDBC sender adapter
Hello Guys
I have this requirement
From Oracle Database I have to read to tables one for the header and one for the detailes and map the result to one RFC.
I have only worked with one table at the time with the JDBC sender adapter but never with 2 tables
My challenges are
1 - How I can read the 2 tables at the same select statement , I suppose I have to use a join with 2 identical fields , so far so good ,but how I can handle multiple records
suppose the result is 10 new different records which each of the recored has to be mapped to the RFC , then we will have 10 RFC calls.
how can I do the mapping in this case.
2 - How can I update the 2 tables at the samme time and flag them as processed , as far as I know we can not use 2 update statement in the same JDBC sender
any help will do
Thanks in advance.Hi
Thanks for the replayes
The RFC is used to create and Invoice Idoc , It has to be one record (Header and Item ) to one RFC.
a JDBC to IDoc can also be used , but we have to update another table in SAP that is why the RFC,
My doubt is how the Data type for the sender JDBC should look like , as mentioned I have 2 tables to fetch data from
<Invoice>
<Header> 1 -- 1
<f1>
<f2>
<f3>
</Header>
<Item> 1--n
<f1>
<f2>
<f3>
</Item>
</Invoice>
The sender JDBC returns
<Invoice>
<row>
<f1>
<f2>
<f3>
</row>
</Invoice>
How can I replicate the data type to meet the JDBC sender structure.
and regarding the mapping do I have to change the occurrunce to 0 -- unbounded
regarding the update Ragu is right in his suggestion
Table1 can be used as primary table, Table2 can be used as Secondary table.. u will have key field to link both table.
So Just Updating only Primary Table(Table1) will helps on this.
Thanks. -
JDBC Receiver Adapter and Oracle BLOB
Hi,
I would like to put some raw data into an ORACLE BLOB using XI. My idea was to put the data in an xml element, but the JDBC sender adapter doesn't seem to be able to cope with writing. Has anybody gathered experiences regarding this topic?
Kind regards,
HeikoHi,
The error saying it is unable to connect to the Database, so it may be the drivers problem. once check the drivers and its syntaxes.
Syntax :
http://www.devx.com/tips/tip/28818
For Download and configure the drivers :
http://www.aquafold.com/docs-jdbcdrivers-oracle10g.html
http://www.oxygenxml.com/database_drivers.html
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f04ce027-934d-2a10-5a8f-fa0b1ed4d88f -
Jdbc sender adapter hangs and starts showing "Processing Started" forever
Dear ,
We are facing some issues with jdbc sender adapter channel on production system
Environment : XI 3.0 SP 20 + HP-UX 11.23 ia64 + Oracle 10.2
Sometimes it hangs and starts showing "Processing Started" forever on communication channel monitoring .
There is no error log for this.
If i stop it and then start it , no use.
If i copied this to a new one then it works.
I have found few SAP note like 1078420,1083488 , but my system is already at higher patch level.
Can you please advise me something as we are facing in production frequently.
Regards,
SandeepHi Sandeep,
This problem even we too faced in our project and thought of many stupid things finally found that the JDBC adapter is LOCKED.
Check in the Visual Admin >Cluster> "LOCKING ADAPTER"
we get a option of Display Locks .Check for an entry with
NAME : $XIDBAD.JDBC2XI
reset the locks and restart the CC ,now it works fine.
Note 1083488 - XI FTP/JDBC sender channel stop polling indefinitely(04/04S)
Thanks
Sudharshan
Maybe you are looking for
-
Slow report viewer/rdlc performance in local mode with Single Sign On
Hi Team, We have recently enabled Single Sign On to our application and after that our rdlc reports loading got extremely slow. Please find the below configuration that we are using. 1. Report Viewer 11.0.0.0 2. running rdlc file in local mode (not u
-
I am trying to install the new version of Adobe Player on my Mac. I download it but can't install it. When I go to install it I get a security screen with my user ID and it asks for my password. I have reset my password but still can't get it to be a
-
NEED HELP CONNECTING A SURROUND RECIVER TO A 40 INCH TV
OK Can any one help me out with this problem i have a hdmi cable plugged in the out port on the reciver in to the tv and i change it on the tv the right connection and it says no video signal. What else do i need to do to get this fixed if you can he
-
Duplex printing with HP officejet 7310xi
After installing SnowLeopard, the two-sided print option does not appear as an option. Any ideas?
-
How to create this texture in photoshop? See image.
I'm trying to replicate this background texture in Adobe Photoshop CS5. Can anyone give me a few pointers as to how this will work? I'll give you an update with any suggestions provided. Thanks