Use this event to
Excerpt |
---|
Populate values in Orders displayed at the mobile device (derived from any of four associated header tables). Parameters includes a RecRef-instance for the header table. |
This event is executed after each of these following events have been executed already:
OnGetPickOrders_OnAfterSetFromWarehouseActivityHeader
OnGetPickOrders_OnAfterSetFromPurchaseReturnHeader
OnGetPickOrders_OnAfterSetFromTransferHeader
OnGetPickOrders_OnAfterSetFromSalesHeader
Template
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrders_OnAfterSetFromAnyHeader', '', true, true)]
procedure OnGetPickOrders_OnAfterSetFromAnyHeader(_RecRef: RecordRef; var _BaseOrderElement: Record "MOB Ns BaseDataModel Element")
begin
end;
Example 1
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrders_OnAfterSetFromAnyHeader', '', true, true)]
procedure MyOnGetPickOrders_OnAfterSetFromAnyHeader(_RecRef: RecordRef; var _BaseOrderElement: Record "MOB Ns BaseDataModel Element")
var
AssignedUserIdFldNo: Integer;
begin
AssignedUserIdFldNo := FieldName2FieldNo(_RecRef, 'Assigned User ID');
...
Example 2
...
Use this event to
Excerpt |
---|
Populate values in Orders displayed at the mobile device (derived from any of four associated header tables). Parameters includes a RecRef-instance for the header table. |
This event is executed after each of these following events have been executed already:
OnGetPickOrders_OnAfterSetFromWarehouseActivityHeader
OnGetPickOrders_OnAfterSetFromPurchaseReturnHeader
OnGetPickOrders_OnAfterSetFromTransferHeader
OnGetPickOrders_OnAfterSetFromSalesHeader
Template
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrders_OnAfterSetFromAnyHeader', '', true, true)]
procedure OnGetPickOrders_OnAfterSetFromAnyHeader(_RecRef: RecordRef; var _BaseOrderElement: Record "MOB Ns BaseDataModel Element")
begin
end;
Example 1
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrders_OnAfterSetFromAnyHeader', '', true, true)]
procedure MySortByCustomTag MyOnGetPickOrders_OnGetPickOrders_OnAfterSetFromAnyHeader(_RecRef: RecordRef; var _BaseOrderElement: Record "MOB Ns BaseDataModel Element")
var
AssignedUserIdFldNo
DataTypeManagement: Codeunit "Data Type Management";
NewFieldRef: IntegerFieldRef;
begin
with _BaseOrderElement do begin
AssignedUserIdFldNo := FieldName2FieldNoif DataTypeManagement.FindFieldByName(_RecRef, NewFieldRef, 'Assigned User ID'); if (AssignedUserIdFldNo <> 0) then
SetValue _BaseOrderElement.SetValue('AssignedUserIDMyAssignedUserID', 'Assigned to: ' + GetValueByFieldNo(_RecRef, AssignedUserIdFldNo));
Set_Sorting1(CopyStr(GetValue('AssignedUserID'), 1, MaxStrLen("Sorting1 (internal)")));
Set_Sorting2(CopyStr(Get_ItemNumber(), 1, MaxStrLen("Sorting2 (internal)")));
end;
end; local procedure FieldName2FieldNo(var RecRef: RecordRef; FieldNameToConvert: Text): Integer
var
FieldRec: Record "Field";
begin
if (StrLen(FieldNameToConvert) > MaxStrLen(FieldRec.FieldName)) then // FieldNameToConvert too long and cannot be a table field name
exit(0);
FieldRec.Reset();
FieldRec.SetCurrentKey("TableNo", FieldName);
FieldRec.SetRange(TableNo, RecRef.Number());
FieldRec.SetRange(FieldName, FieldNameToConvert);
if FieldRec.FindFirst() then
exit(FieldRec."No.");
exit(0);
end; local procedure GetValueByFieldNo(var RecRef: RecordRef; FieldNo: Integer): Text
var
NewFieldRef: FieldRef;
begin
NewFieldRef := RecRef.Field(FieldNo);
exit(NewFieldRef.Value()) CopyStr(NewFieldRef.Value(), 1, NewFieldRef.Length()));
_BaseOrderElement.Set_DisplayLine2('Set from OnGetPickOrders_OnAfterSetFromAnyHeader'); // override value previously set at table event
end;
Example 2
// [Example]: Sort by custom tag
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrders_OnAfterSetFromAnyHeader', '', true, true)]
procedure MySortByCustomTag_OnGetPickOrders_OnAfterSetFromAnyHeader(_RecRef: RecordRef; var _BaseOrderElement: Record "MOB Ns BaseDataModel Element")
var
DataTypeManagement: Codeunit "Data Type Management";
NewFieldRef: FieldRef;
begin
with _BaseOrderElement do begin
if DataTypeManagement.FindFieldByName(_RecRef, NewFieldRef, 'Assigned User ID') then
SetValue('AssignedUserID', 'Assigned to: ' + CopyStr(NewFieldRef.Value(), 1, NewFieldRef.Length()));
Set_Sorting1(CopyStr(GetValue('AssignedUserID'), 1, MaxStrLen("Sorting1 (internal)")));
Set_Sorting2(CopyStr(Get_ItemNumber(), 1, MaxStrLen("Sorting2 (internal)")));
end;
end;
Filter by label (Content by label) | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...