Update
The Update
modifies one-to-many existing items in the application. The operation specifies a delta of what to change on the current entity rather than a full snapshot. Only fields that need updating need to be included in the request.
This operation also provides the option of locking the updated entity using a defined lock key. The order of operations for locking and unlocking using this operation determines whether or not other elements of the update is applied correctly:
- Lock the entity using the specified key.
If the entity could not be locked, then the remainder of the update does not occur. An exception is returned.
- Validate if all specified unlock keys exist.
If any of the unlock keys do not exist, then the remainder of the update does not occur. An exception is returned.
- Apply all other field updates except the
unlock
. - Unlock the item using the specified keys
Users must have one of the following permissions for the respective action (update item or party) to call this operation:
- PERM_UPDATE_ITEM
- PERM_UPDATE_PARTY
The following table describes the performance implications of using this operation:
Activity | Impact | Description |
---|---|---|
Updating multiple items in a single operation call | Low | The more entities that are updated in a single call, the longer the operation takes to complete. Updating multiple entities in a single call still takes less time than updating each entity individually using separate operation calls.
Update performance is slower than the create performance. |
Updating items with large numbers of characteristics, orders, and relationships | Medium | The more characteristics, orders, and relationships that are updated on an item, the longer the processing time is. |
Update Request
This message is sent by the client application to the TIBCO Product and Service Inventory system.
Element | Type | Cardinality | Description |
---|---|---|---|
batchId | String | Optional | This is the ID of the batch this update belongs to. |
entity | Type | Mandatory (1..N) | This defines the updates to perform. |
entity/Id | String | Mandatory | This is the unique identifier for the updated entity. |
entity/version | Long | Optional | This field must represent the current version of the entity. If there is a version mismatch, the update fails. |
entity/ref | Nullable String | Optional | This is the reference to the entity being updated. |
entity/name | Nullable String | Optional | This is the name of the updated entity. |
entity/type | String | Optional | This is the type of the updated entity. |
entity/subtype | Nullable String | Optional | This is the subtype of the updated entity. |
entity/status | String | Optional | This is the status of the updated entity. |
entity/characteristic | N/A | Optional | This defines characteristics of the entity being updated. See the "Update Characteristic" section in Update Sub Elements for more details on the sub elements of this element. |
entity/lock | LockType | Optional | This is the lock information for the entity. See the "Update Lock" section in Update Sub Elements for more details on the sub elements of this element. |
entity/unlock | UnlockType | Optional | This is the unlock information for the entity. See the "Update Lock" section in Update Sub Elements for more details on the sub-elements of this element. |
entity/ownedBy | String | Optional | This is the owner of the updated entity. |
entity/undelete | Boolean | Optional | This indicates to logically undelete the entity. |
Element | Type | Cardinality | Description |
---|---|---|---|
entity/productid | String | Optional | This is the product ID for the updated item. |
entity/productVersion | Nullable String | Optional | This is the product version for the updated item. |
entity/party | Nullable String | Optional | This is the party of the updated item belongs to. (no referential integrity) |
entity/order | N/A | Optional | This is the order or orders related to this item. See the "Update Order" section in Update Sub Elements for more details on the sub elements of this element. |
entity/relationship | N/A | Optional | This is the relationship for the item. See the " Update Relationship" section in Update Sub Elements for more details on the sub-elements of this element. |
entity/startDate | dateTime | Optional | This is the start date for the updated item. |
entity/endDate | dateTime | Optional | This is the end date for the updated item. |
Element | Type | Cardinality | Description |
---|---|---|---|
entity/parentPartyid | Nullable String | Optional | This is the parent party ID for the updated party. |
Update Response
This message is sent by the TIBCO Product and Service Inventory system to the requesting application to return the results of the operation invocation.
Element | Type | Cardinality | Description |
---|---|---|---|
resultStatus | ResultStatusType | Mandatory | This is the result status type and the operation invocation status of the query. |
batchId | String | Optional | This is the ID of the batch this update belongs to. |
entity | BaseEntityResultType | Mandatory (1..N) |
This is the entity type returning the individual result status. If none of the entities could be updated due to a system error, then this set is empty. If any of the entities could be updated, then there is one entity for each requested update entity. The returned entity order is the same as the original requested item entity. |
entity/Id | String | Mandatory | This is the unique identifier for the updated entity. |