Postman collection
Orders Write

pixiReleaseOrder

Releases an on-hold order identified by its external order number and shop by setting its order lines from status HAL to ANG.

Releases an order that is on hold (status HAL) so it can be processed again.

  1. The internal order number (OrderNr) is looked up in Orderlines via OrderNrExternal = @OrderNrExternal, joined to Customers with CustomerOf = @ShopId.
  2. The internal procedure GOS_ReleaseOnHold is called with that order number and the user API. It sets every order line of the order that has status HAL to ANG, sets UpdateDate to the current date and UpdateEmp to API (payments).
  3. Finally one status row is returned: the number of order lines with the given external order number and shop that now have status ANG. ReturnCode is OK if this number is greater than 0, otherwise ERROR.

Notes

  • AffectedRows is not the number of lines actually released: it counts all lines with status ANG, including lines that already had ANG before the call. Calling the procedure for an order that was not on hold but has ANG lines therefore also returns OK.
  • If no order is found, nothing is updated and the result is ERROR with AffectedRows = 0. The same happens if the order exists but none of its lines is in status ANG afterwards (e.g. lines in other statuses).
  • If several orders share the same external order number within the shop, only one of them (the last row read by the lookup) is released, while the count covers lines of all matching orders.
  • Lookups and the final count use NOLOCK, so the result can reflect uncommitted data.
  • The update runs inside a transaction (or savepoint if a transaction is already open). On an error the transaction is rolled back, the error details are written to LogTable and the error is re-raised.

Tables used

Orderlines · Write Customers · Read LogTable · Write
SQL object:
dbo.pipiReleaseOrder
Updated at 2026-10-30