Simply perform the “ERROR()” command in NAV and the message will be shown on the scanner as an error.
Example
ERROR('This is an error message');
Confirmation Dialog
To display a confirm dialog, you prefix the error message with”ForceWarning:”
The process flow is:
The user can Cancel or Confirm
Cancel will return the user to the previous screen
Confirm will automatically repeat the result, but this time 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.
Below is the XML Request from the mobile device to the backend.
Note how a <Force> tag is included.
Use this to determine whether to issue the ERROR.
If the Force tag is included, do NOT run the ERROR, because this is the second "round trip", telling you that the user selected Confirm
See code example below
Example
IF NOT Force THEN BEGIN
ERROR('ForceWarning:' + STRSUBSTNO(MobWmsLanguage.GetMessage('QUANTITY_ERR'),Quantity,ActualQty));
END;
Display dialog when opening an Order
Show a Confirmation Dialog when opening a e.g. Receive, Pick -order.
Modify function GetLockOrderNoAndPrefix_FromBackendID in Codeunit WMS Order Locking
Add a XML Node variable "XMLForceNode" and the following code.
Example
IF MobDocQueue."Document Type" = 'LockOrder' THEN
IF UPPERCASE(MobXMLMgt.FindNodeAndValue(XMLRequestDataNode,'Force',XMLForceNode)) <> 'TRUE' THEN
ERROR('ForceWarning:My message here');
Line-Breaks
Line breaks / Carriage Return, can be performed by using the "\" character in NAV/BC.
Note
“Unplanned Count” in Codeunit WMS Adhoc Registr.
When opening a Receive/Pick/Put-away/Move Order, the warning is performed in Codeunit WMS Order Locking