cancel
Showing results for 
Search instead for 
Did you mean: 

Receiver JDBC - Error

Former Member
0 Kudos

Hi,

I am trying to delete the table before inserting and have two structures in my mapping

Delete_item

Insert_item

I have mapped the action field and table correctly in both of these structures.

When i executed , I got the following error in the communication channel.

FATAL ERROR document format: structure 'Delete_tblSAP_Item', no key element found.

My delete_tbl_SAP_Item has the following structure

action = DELETE

table = dbo.item

Please help what went wrong

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi

While using the "DELETE" statement Key element should not be "empty". Also check your XI Target structure is created accrodingly.

http://help.sap.com/saphelp_nw2004s/helpdata/en/2e/96fd3f2d14e869e10000000a155106/frameset.htm


If there is no <key> element, or if there is a <key> element but it is empty, then no condition is specified
and the entire table is to be deleted. 
This *may not be permitted by the configuration of the JDBC adapter for security reasons* and
will therefore result in an error during message processing and an appropriate error message.

Regards

Ramg

Former Member
0 Kudos

Hi,

I do have a key field in the database. If that means, do i need to specify key element also in the structure.

but, a normal delete statement followed by table name will delete all rows irrespective of whether you have key elements or not.

Even if I need to specify key elements, what would be the corresponding value

stefan_grube
Active Contributor
0 Kudos

Why do you want to delete the entries?

When you delete the entries, it could happen that the data are not processed.

Former Member
0 Kudos

Hi,

Do you want to delete all the records in the table before inserting??

JDBC receiver side -> Processing tab> Uncheck the option "Key field mandatory"! hope it will work!!

OR

Only particluar records -> You might have some primary key values in your table and use the same in XI. <key1>>represent the <col name of table>

Regards

Ramg

Former Member
0 Kudos

Stefan,

This interface runs weekly. Before inserting fresh data, I am deleting all the entries from the table. The Previous data would be processed automatically the next day. So we do not have any risk of losing old data.