Show TOC

 Change / Update Behavior Type 1 Locate this document in the navigation structure

The standard behavior of a service when dealing with transferable data in an incoming request is to completely overwrite the part of the business object that can be changed. The service therefore expects each incoming request to contain values for all possible elements, and in the case of list-type elements to contain all list entries. If a request does not contain a value for an optional element (even though a value is stored in the appropriate field in the database), or if a request does not contain list entries despite there being corresponding list entries in the database, the data will be deleted upon successful execution.

Note that when using a service, data transferred by request messages completely overwrites corresponding objects in the back-end system database. Therefore, the back-end system expects a value for all elements that are found in the structure of the message type. This also applies to elements that are designated as optional in the message structure.

Caution: If elements are not filled in a request message, the back-end system interprets this information as a deletion entry and initializes the corresponding fields in the database. In the case of list-type elements that can contain several items, the items that are left out are interpreted as deletion entries. You can identify these list-type elements by checking the maxOccurs attribute, which has a value greater than 1, typically ‘unbounded’.

For example:

An order contains a bill-to address that differs from the ship-to address, and items 10, 20, 30, 40, and 50. In the request message for a change operation, item 10 is to be changed and item 30 is to be deleted. The bill-to address and the other items are to remain unchanged.

To avoid deleting items 20, 40, and 50 with the change operation, you must also specify them even if they have not been changed. If you do not specify item 30, it is deleted. To avoid deleting the bill-to address, which would result in the bill being sent to the ship-to address, you also have to include the complete bill-to address in the request message.