cancel
Showing results for 
Search instead for 
Did you mean: 

Reaciver JDBC Adapter

Former Member
0 Kudos

Hi,

I am Desinged and Configured i am getting error message while passeing a message from idoc-xi-Oralce.

Below message been displayed

Error

Unable to execute statement for table or stored procedure. 'dbTableName' (Structure 'STATEMENT') due to java.sql.SQLException: ORA-00942: table or view does not exist

2006-09-06 18:13:26

Error

Exception caught by adapter framework: Error processing request in sax parser: Error when executing statement for table/stored proc. 'dbTableName' (structure 'STATEMENT'): java.sql.SQLException: ORA-00942: table or view does not exist

Need an Helpful answers

Thanks

Hari

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Hari,

Try to specify to use the following format for the table name:

<schema name>.<table name>

Some of the receiver JDBC actions don't allow you to use ".", but others allow it.

Cheers,

Ofer

Former Member
0 Kudos

Hi Hari,

Even i used to get the same error.

If the key tags are optional in your case,

then in the Receiver JDBC adapter you need to uncheck the

<i>Key Tags Mandatory</i> option.

Regards,

Sumit

Former Member
0 Kudos

The error clearly states XI can not find the table.

Check the table name(It is case sensitive).

Regards,

Jai Shankar.

bhavesh_kantilal
Active Contributor
0 Kudos

Hari,

Can you please paste the Data type / payload going out of MONI to the JDBC adapter ..

And also the INSERT / UPDATE query that you are trying

Regards,

Bhavesh

Former Member
0 Kudos

Hi Bhavesh,

I sent you an email to yahoo id.

Thanks

Hari

bhavesh_kantilal
Active Contributor
0 Kudos

Hari,

Can you please post the payload from SXMB_MONI here on the forum itself .

Regards,

Bhavesh

Former Member
0 Kudos

Hi Bhavesh,

Here is payload data

<?xml version="1.0" encoding="UTF-8" ?>

- <ns0:MT_DMZ_SAP_CONTRACT_RE xmlns:ns0="http://sap.com/xi/CRMtoXIUpdateOracle">

- <STATEMENT>

- <dbTableName action="UPDATE_INSERT">

<sap_contract>sap_contract</sap_contract>

- <access>

<CTC_CONTRACT_ID>0005000084</CTC_CONTRACT_ID>

<CTC_CONTRACT_TYPE_CD>ZRES</CTC_CONTRACT_TYPE_CD>

<CTC_YEAR>empty</CTC_YEAR>

<CREATE_DATE>08/16/20</CREATE_DATE>

<CREATED_BY>DZTHOMAS</CREATED_BY>

<CTC_SIGN_DATE>08/16/20</CTC_SIGN_DATE>

<MODIFY_DATE>09/06/20</MODIFY_DATE>

<MODIFIED_BY>KICAIRNES</MODIFIED_BY>

</access>

</dbTableName>

</STATEMENT>

</ns0:MT_DMZ_SAP_CONTRACT_RE>

Thanks for helping me for all

THanks

Hari

bhavesh_kantilal
Active Contributor
0 Kudos

Hari,

The point is simple here..!!

You are trying an UPDATE_INSERT and there is no KEY..

Just do the following,

Make action as INSERT . This will insert a row into the table which is what you are trying I guess..

<?xml version="1.0" encoding="UTF-8" ?>

- <ns0:MT_DMZ_SAP_CONTRACT_RE xmlns:ns0="http://sap.com/xi/CRMtoXIUpdateOracle">

- <STATEMENT>

- <dbTableName action="<b>INSERT</b>">

<sap_contract>sap_contract</sap_contract>

- <access>

<CTC_CONTRACT_ID>0005000084</CTC_CONTRACT_ID>

<CTC_CONTRACT_TYPE_CD>ZRES</CTC_CONTRACT_TYPE_CD>

<CTC_YEAR>empty</CTC_YEAR>

<CREATE_DATE>08/16/20</CREATE_DATE>

<CREATED_BY>DZTHOMAS</CREATED_BY>

<CTC_SIGN_DATE>08/16/20</CTC_SIGN_DATE>

<MODIFY_DATE>09/06/20</MODIFY_DATE>

<MODIFIED_BY>KICAIRNES</MODIFIED_BY>

</access>

</dbTableName>

</STATEMENT>

</ns0:MT_DMZ_SAP_CONTRACT_RE>

Regards,

Bhavesh

Former Member
0 Kudos

Hi ,

sorry for the confusion.Your payload looks correct for INSERT operation and also you need key if you want to do UPDATE_INSERT.Check the target database table is accessible or not.

Sekhar

Former Member
0 Kudos

Hi Bhavesh.

I am trying to do update_insert i am ignoreing key values.because there is no condition.all i need to do is insert data first then it need to check if previous values exist then need to update.

Regd's

Hari

Former Member
0 Kudos

Hi ,

Your UPDATE_INSERT operation is doing that job.In that case you have to update the value basing on the specified column only(primary key value)

Sekhar

Former Member
0 Kudos

If you are trying to update a table wit out any key tag or a key tag which is empty, it means you are trying to update all the fields in the table with out any conditions this is not allowed from XI due to security reasons.

Regards,

Jai Shankar.

Former Member
0 Kudos

Hi shekar,

First two fields are my primary key in oracle table.

in what way do i need to design a key tag.

Thanks for replying me very soon

Regd's

Hari

Former Member
0 Kudos

If you only need to do insert use insert in ACTION attrribute, if you need update or an insert go for UPDATE_INSERT .

The key tag must contain the values you specify in where condition, for ex. if you want your SQL to look like this

UPDATE <TABLEE-NAME> set field1 = "value" where field2 = "value2"

Your key tag should contain <field2> and it should be mapped with value2(either from source structure or with a constant.

Regards,

Jai Shankar.

bhavesh_kantilal
Active Contributor
0 Kudos

Hari, Can you give us the UPDATE statement that you are trying along with the WHERE clause. So that the datatype format can be suggested.

Regards,

Bhavesh