OnPostReceiveOrder_OnAddStepsToAnyHeader

Minimum Requirements

  • Extension version MOB5.27
  • Android App 1.5.9

Use this event to

Interrupt any Receive Order posting and add extra steps (“Header Steps”) based on values already collected. Parameters includes a RecRef-instance for the header table.

Like other Receive "Any"-events this event is executed for all of four different receive document sources (Warehouse Receipt, Purchase Order, Transfer Order and Sales Return Order).

If you are implementing changes only for a specific document source, you likely should use one of the document-source-specific events (see "This event is executed after...", below).

Steps with no "conditions" are better created using the OnGetReceiveOrderLines_OnAddStepsToAnyHeader-event.

Description

Use this event to interrupt any Receive Order posting and add extra steps (“Header Steps”) based on values already collected.

  • Add extra steps during posting (interrupt posting to collect addtional steps)
  • Used for "conditional" steps i.e. when values from previously collected steps determines if the step are to be included
  • Extra steps can be collected for the "header" only. Extra steps per document line are currently not supported for planned document types
  • Posting are restarted (started over) when the additional steps have been collected on the mobile device
  • Events are executed every time posting starts over and can be used to chain even more steps.


This event is executed after each of these following events:


Template

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Receive", 'OnPostReceiveOrder_OnAddStepsToAnyHeader''', true, true)]
    local procedure OnPostReceiveOrder_OnAddStepsToAnyHeader(var _OrderValues: Record "MOB Common Element"; _RecRef: RecordRefvar _StepsElement: Record "MOB Steps Element")
    begin
    end;

Example

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Receive", 'OnPostReceiveOrder_OnAddStepsToAnyHeader''', true, true)]
    local procedure MyOnPostReceiveOrder_OnAddStepsToAnyHeader(var _OrderValues: Record "MOB Common Element"; _RecRef: RecordRefvar _StepsElement: Record "MOB Steps Element")
    begin
        // Break if some condition to include news step(s) is not met
        // if .... then
        //    exit;


        // Break if new datestep is already collected to prevent infinite loop
        if _OrderValues.HasValue('MyPostingDate'then
            exit;

        // Create a new date step for manually selecting Posting Date
        _StepsElement.Create_DateStep(10000'MyPostingDate');
        _StepsElement.Set_header('Posting Date');
        _StepsElement.Set_minDate(Today() 10);
        _StepsElement.Set_maxDate(Today());
    end;


More examples


Version History

VersionChanges
MOB5.27Introduced