Use this event to
- Add custom steps
- Replace standard steps with custom logic
- Manipulate Header Field Values before standard steps are generated
Description
This event is triggered before existing unplanned functions generates their steps, allowing you to manipulate how they are created.
You can also add your own steps or replace standard logic entirely using "IsHandled".
Template
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Adhoc Registr.", 'OnGetRegistrationConfiguration_OnBeforeAddSteps', '', true, true)]
local procedure OnGetRegistrationConfiguration_OnBeforeAddSteps(_RegistrationType: Text; var _HeaderFieldValues: Record "MOB NS Request Element"; var _Steps: Record "MOB Steps Element"; var _RegistrationTypeTracking: Text; var _IsHandled: Boolean)
begin
end;
Parameters
Example
- Add a new step to Unplanned Move, collecting a "Reason Code" for the movement.
// Example 1: Add Reason Code step to Unplanned Move
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Adhoc Registr.", 'OnGetRegistrationConfiguration_OnBeforeAddSteps', '', true, true)]
local procedure OnGetRegistrationConfiguration_OnBeforeAddSteps(_RegistrationType: Text; var _HeaderFieldValues: Record "MOB NS Request Element"; var _Steps: Record "MOB Steps Element"; var _RegistrationTypeTracking: Text; var _IsHandled: Boolean)
var
MobWmsToolbox: Codeunit "MOB WMS Toolbox";
Location: Text;
begin
if _RegistrationType <> MobWmsToolbox."CONST::UnplannedMove"() then
exit;
// Create step for Reason Code. Id 95 is not used by standard steps.
_Steps.Create_ListStep_ReasonCode(95, _HeaderFieldValues.Get_ItemNumber());
end;
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Adhoc Registr.", 'OnPostAdhocRegistrationOnUnplannedMove_OnAfterCreateWhseJnlLine', '', true, true)]
local procedure MyOnPostAdhocRegistrationOnUnplannedMove_OnAfterCreateWhseJnlLine(var _RequestValues: Record "MOB NS Request Element"; var _WhseJnlLine: Record "Warehouse Journal Line")
begin
// Read Reason Code from request and apply to Whse. Journal Line
_WhseJnlLine.Validate("Reason Code", _RequestValues.GetValue('ReasonCode'));
end;
More examples
There are no items with the selected labels at this time.
Version History
Version | Changes |
---|---|
MOB5.48 | Introduced |