Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Info
titleMinimum Requirements
  • Extension version MOB5.27
  • Android App 1.5.9

...

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Receive", 'OnPostReceiveOrder_OnAddStepsToSalesReturnHeader''', true, true)]
    local procedure OnPostReceiveOrder_OnAddStepsToSalesReturnHeader(var _OrderValues: Record "MOB Common Element"; _SalesReturnHeader: Record "Sales Header"; var _Steps: Record "MOB Steps Element")
    begin
    end;

Example - New steps to select Posting Date "Today", "Yesterday" or "Other date"

...


...

    // OnGetReceiveOrderLines
    // Create a step in the default header collector (for sales return order only / receive from sales header are always sales return orders)
    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Receive", 'OnGetReceiveOrderLines_OnAddStepsToAnyHeader''', true, true)]
    procedure MyOnGetReceiveOrderLines_OnAddStepsToAnyHeader(_RecRef: RecordRefvar _StepsElement: Record "MOB Steps Element")
    begin
        if (_RecRef.Number() DataBase::"Sales Header"then begin
            _StepsElement.Create_RadioButtonStep(10000'MyPostingDateRadioButtonStep');
            _StepsElement.Set_header('Posting Date');
            _StepsElement.Set_listValues('Today;Yesterday;Other date');
            _StepsElement.Set_defaultValue('Today');
        end;
    end;

...

Example

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Receive", 'OnPostReceiveOrder_OnAddStepsToSalesReturnHeader''', true, true)]
    local procedure MyOnPostReceiveOrder_OnAddStepsToSalesReturnHeader(var _OrderValues: Record "MOB Common Element"; _SalesReturnHeader: Record "Sales Header"; var _Steps: Record "MOB Steps Element")
    begin
        // Break when any option different from 'Other date' was selected in the 'MyPostingDateRadioButtonStep'
        if _OrderValues.GetValue('MyPostingDateRadioButtonStep'<> 'Other date' then
            exit Break if some condition to include news step(s) is not met
        // if .... then
        //    exit;


        // Break if new datestep for 'Other date' is already collected to prevent infinite loop 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
        _Steps.Create_DateStep(10000'MyPostingDate');
        _Steps.Set_header('Posting Date');
        _Steps.Set_minDate(Today() 10);
        _Steps.Set_maxDate(Today());
    end;
    // OnPostReceiveOrder
    // Set new posting date including using a value from conditional step 'MyPostingDate'
    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Receive", 'OnPostReceiveOrder_OnBeforePostSalesReturnOrder''', true, true)]
    procedure MyOnPostReceiveOrder_OnBeforePostSalesReturnOrder(var _OrderValues: Record "MOB Common Element"; var _SalesReturnHeader: Record "Sales Header")
    var
        SalesRelease: Codeunit "Release Sales Document";
        PostingDate: Date;
    begin
        case _OrderValues.GetValue('MyPostingDateRadioButtonStep'of
            'Today':
                PostingDate := Today();
            'Yesterday':
                PostingDate := Today() 1;
            'Other date':
                PostingDate := _OrderValues.GetValueAsDate('MyPostingDate', true);
        end;
        if (PostingDate <> 0D) and (PostingDate <> _SalesReturnHeader."Posting Date") then begin
            SalesRelease.Reopen(_SalesReturnHeader);
            SalesRelease.SetSkipCheckReleaseRestrictions();
            _SalesReturnHeader.SetHideValidationDialog(true);
            _SalesReturnHeader.Validate("Posting Date", PostingDate);
            SalesRelease.Run(_SalesReturnHeader);
        end;
    end;

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
sorttitle
titleMore examples
excerptTypesimple
cqllabel = "bc" and label = "order" and label = "example" and label = "onaddstepsto" and label = "onpost"

...