Description
You want to prompt the user to Confirm a message.
Example on receipt posting
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Receive", 'OnPostReceiveOrder_OnBeforePostAnyOrder', '', true, true)]
local procedure OnPostReceiveOrder_OnBeforePostAnyOrder(var _OrderValues: Record "MOB Common Element"; var _RecRef: RecordRef);
var
MobToolbox: Codeunit "MOB Toolbox";
begin
MobToolbox.ErrorIfNotConfirm('You are stopped for some condition... Do you want to continue?', _OrderValues);
end;
See OnPostReceiveOrder_OnBeforePostAnyOrder
Example on a new Unplanned function
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Adhoc Registr.", 'OnPostAdhocRegistrationOnCustomRegistrationTypeAsXml', '', true, true)]
local procedure OnPostAdhocRegistrationOnCustomRegistrationType(var _XMLRequestDoc: XmlDocument; var _XMLResponseDoc: XmlDocument; _RegistrationType: Text; var _RegistrationTypeTracking: Text[200]; var _IsHandled: Boolean)
var
MobToolbox: Codeunit "MOB Toolbox";
begin
if _RegistrationType <> 'MyNewUnplannedName' then
exit;
if _IsHandled then
exit;
MobToolbox.ErrorIfNotConfirm('You are stopped for some condition... Do you want to continue?', _XMLRequestDoc);
MOBToolbox.CreateSimpleResponse(_XMLResponseDoc, '');
_IsHandled := true;
end;
See OnPostAdhocRegistrationOnCustomRegistrationTypeAsXml
Example on LockOrder
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Order Locking", 'OnLockOrder_OnBeforeLockOrder', '', true, true)]
local procedure ShowConfirmBox_OnBeforeLockOrder(_MobDocumentQueue: Record "MOB Document Queue"; var _RequestValues: Record "MOB NS Request Element"; var _IsHandled: Boolean)
var
MobToolbox: Codeunit "MOB Toolbox";
begin
if _RequestValues.GetValue('Type') = 'Pick' then
MobToolbox.ErrorIfNotConfirm(_RequestValues, 'You are stopped for some condition... Do you want to continue?');
end;
See OnLockOrder_OnBeforeLockOrder
How it works behind the scenes
The key ”ForceWarning:” is prefixed to a regular ERROR() command.
Error('ForceWarning:%1', MyConfirmMessage);
- This way front-end App knows to a display a Confirm dialog
- Choosing "Cancel" will return the user to the previous screen
- Choosing "Confirm" will automatically repeat the request with a “Force” tag included
- The Force tag tells the backend that the Process can now be completed and NOT halted by the ERROR command.
Version History
Version | Changes |
---|
MOB5.12 | Introduced |