Form DeliveryDetails
- Unit name: Forms.Grids.DeliveryDetails
- Form name: DeliveryDetailsForm
- Old form name: uni3 (Form3)
Synopsis
Shows the details of a delivery order, and allows to change it.
Functionalities
- Gets passed an IOUT business interface.
- Show client, order and date in labels.
- Show a grid with order lines. (OutDetails, filtered on OrderID)
- Show a label with asked quantity (sum of Qty)
- Show a label with delivered quantity (sum of QtyDel)
- Show a label with status (Waiting, Printed, Client Confirmed)
- Client Confirmed: EDIDATE is non-empty.
- Printed: PLPrintingDate non-empty
- Picked: There is a detail line with non-empty PickedBy.
- Waiting: if none of the above is true.
- Button to execute DeleteOrder action.
- Button to execute AddArticle action.
- Button to execute DeleteArticle action.
- Button to print DeliveryDetails report.
Actions
DeleteOrder
Deletes the currently selected order. 1. Only available if an order is not in 'picked' state. 2. Asks for confirmation to delete the order delivery. 3. If the user confirms, deletes the order by executing DeliveryControl.DeleteDelivery service call. 4. Close the form.
AddArticle
- Enabled if status is waiting or printed.
- Adds a new record, and opens AddOrderArticle form with it. Applies the values that were entered the previous "add article" call.
- When user closed dialog, entered values are kept for the next call.
- After dialog was closed, refresh details.
DeleteArticle
- Enabled if status is waiting or printed and there is a current line in the order details.
- Asks for confirmation to delete the article.
- If the user confirms, delete the article with the DeliveryControl.DeleteDeliveryArticle service call.
- Refresh the details.
Tables/Views
- OUT filter based on search criteria.
- OUTDETAILS filter based OUT record (AVIZNO)
Needed Service Calls
DeliveryControl.DeleteDeliveryArticle
To delete a line from the delivery order.
DeliveryControl.DeleteDelivery
To delete the delivery order completely.
Reports
- DeliveryDifferences Parameter BlockNo is needed, take from current record.