cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC Receiver

Former Member
0 Kudos

Hi All,

I have created a JDBC receiver structure in the following format:

DT_Test

Table

MATERIAL

action (attribute)

access

<Field1>

<Field2>

and i have created action as an attribute and i have mapped the field Table with <tablename> and action with UPDATE_INSERT, rest of the table field are mapped with corresponding field mapping. But i m getting the following error, when it hits the DB. Let me know if I need to make any changes to the structure

Message processing failed. Cause: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'MATERIAL' (structure 'Table'): java.sql.SQLException: FATAL ERROR document format: structure 'Table', no key element found

Error processing request in sax parser: Error when executing statement for table/stored proc. 'MATERIAL' (structure 'Table'): java.sql.SQLException: FATAL ERROR document format: structure 'Table', no key element found

Regards,

Nithiyanandam

Accepted Solutions (0)

Answers (3)

Answers (3)

maciej_jarecki
Contributor
0 Kudos

Hi

Please take a look here.

http://help.sap.com/saphelp_nwpi71/helpdata/en/43/9519abb1146353e10000000a11466f/frameset.htm

Something is wrong with your message that is send to JDBC Adapter.

BR

Maciej

Former Member
0 Kudos
Former Member
0 Kudos

Hi,

Here action/ table/access : these tagname should not be changed.

Enter the new column values in the element.

Enter exactly one element.

<StatementName>

<dbTableName action=u201DINSERTu201D>

<table>TableName</table>

<col1>val1</col1>

<col2>val2</col2>

</dbTableName>

</StatementName>

Your Statement would be like this :

INSERT INTO TableName (col1, col2) VALUES(u2018val1u2019, u2018val2u2019)

Or .............. example would like be this

<PrimaryInvoiceData> -


ROOTNODE STARTS----


<Update_Insert_INVHDR> -


TABLE A START----


<dbTable action="UPDATE_INSERT">

<table>INVHDR</table>

<VBELN>7468000071</VBELN>

<Key>

<VBELN>7468000071</VBELN>

</Key>

</dbTable>

</Update_Insert_INVHDR> -


TABLE A END

have you seen below threads,

regards,

ganesh.