In the middle of amending a customer order line the user had a quick 5 minute chat with a supervisor then clicked on Save to save the amendments made earlier. On doing so they received the following error:
The Customer Order record has already been changed. Please refresh the record and reenter your changes.
Details.
Order No = S95520
Line No = 18
Del No = 1
Line Item No = 0
Best answer by dhlelk
Hi @johnw66,
The error exactly describes what might actually have happened while the user had a quick 5 minute chat with the supervisor. During this 5 minutes, 1. Another user might have changed the exact Customer Order Line record or, 2. Another user might have triggered a process which would have changed the exact Customer Order Line record or, 3. A background job might have executed and changed the exact Customer Order Line record or, 4. Any other reason where the "rowversion" column of the "customer_order_line_tab" table for the exact Customer Order Line record might have changed.
Technically, the Modify__ procedure is executed when the data is edited and is eligible for an update. For CustomerOrderLine LU, the following procedure gets executed,
In CustomerOrderLine LU, objversion_ = to_char(rowversion,'YYYYMMDDHH24MISS') holds the timestamp where the record was last modified and this serves the purpose of a locking mechanism as well. However, there are other implementations for objversion.
You can read more about the Client Interaction mechanisms for further technical understanding.
The error exactly describes what might actually have happened while the user had a quick 5 minute chat with the supervisor. During this 5 minutes, 1. Another user might have changed the exact Customer Order Line record or, 2. Another user might have triggered a process which would have changed the exact Customer Order Line record or, 3. A background job might have executed and changed the exact Customer Order Line record or, 4. Any other reason where the "rowversion" column of the "customer_order_line_tab" table for the exact Customer Order Line record might have changed.
Technically, the Modify__ procedure is executed when the data is edited and is eligible for an update. For CustomerOrderLine LU, the following procedure gets executed,
In CustomerOrderLine LU, objversion_ = to_char(rowversion,'YYYYMMDDHH24MISS') holds the timestamp where the record was last modified and this serves the purpose of a locking mechanism as well. However, there are other implementations for objversion.
You can read more about the Client Interaction mechanisms for further technical understanding.