Use this event to
Populate values on Order Lines displayed at the mobile device (derived from any of four associated line tables). Parameters includes a RecRef-instance for the line table.
This event is executed after each of these following events have been executed already:
OnGetPickOrderLines_OnAfterSetFromWarehouseActivityLine
OnGetPickOrderLines_OnAfterSetFromPurchaseReturnLine
OnGetPickOrderLines_OnAfterSetFromTransferLine
OnGetPickOrderLines_OnAfterSetFromSalesLine
Template
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrderLines_OnAfterSetFromAnyLine', '', true, true)]
local procedure OnGetPickOrderLines_OnAfterSetFromAnyLine(_RecRef: RecordRef; var _BaseOrderLineElement: Record "MOB Ns BaseDataModel Element")
begin
end;
Example 1: Set value for DisplayLine5
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrderLines_OnAfterSetFromAnyLine', '', true, true)]
local procedure MyOnGetPickOrderLines_OnAfterSetFromAnyLine(_RecRef: RecordRef; var _BaseOrderLineElement: Record "MOB Ns BaseDataModel Element")
var
Item: Record Item;
begin
Item.Get(_BaseOrderLineElement.Get_ItemNumber()); // Get the Item record of the current order line by using a helper function on the BaseOrderLineElement that returns the this value
if (Item."Special Equipment Code" <> '') then begin
_BaseOrderLineElement.Set_DisplayLine5('Using special equipment is mandatory');
_BaseOrderLineElement.SetValue('SpecialequipmentCode', 'SpecialequipmentCode: ' + Item."Special Equipment Code");
end else begin
_BaseOrderLineElement.Set_DisplayLine5('');
_BaseOrderLineElement.SetValue('SpecialEquipmentCode', '');
end;
end;
Example 2: Sorting order lines by Quantity
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrderLines_OnAfterSetFromAnyLine', '', true, true)]
local procedure My2aOnGetPickOrderLines_OnAfterSetFromAnyLine(_RecRef: RecordRef; var _BaseOrderLineElement: Record "MOB Ns BaseDataModel Element")
var
MobToolbox: Codeunit "MOB Toolbox";
Quantity: Decimal;
begin
Quantity := MobToolbox.Text2Decimal(_BaseOrderLineElement.Get_Quantity());
_BaseOrderLineElement.Set_Sorting1(Round(Quantity, 1));
end;
More examples
-
How-to: Modify DisplayLines — Additional text displayed on a List.
-
How-to: Register Quantity By Multiplication (enableMultiplier) — You want to scan the Quantity multiplier and then manually type the quantity to automatically calculate the total quantity to register.
The multiplers are defined by using the "Qty. per Unit of Measure" from the barcode "Unit of Measure" in the "Item Reference". See Barcode Quantity (enableMultiplier) Example: Box (5) x 10 = 50 Pcs
-
How-to: Register Quantity By Scan — You want to scan the Quantity . Either one piece or have the system calculate quantity based on "Item Cross Reference".
-
How-to: Sorting of Order Lines — Examples of sorting Order Lines.
Version History
Version | Changes |
---|---|
MOB5.00 | Introduced |