Description
Excerpt |
---|
A line step can be Online or Offline validated. This is opposed to on posting (header steps) |
Use case
- Tell the user instantly whether an input value is correct
- Return additional steps - based on the input
Limitations
- You will limit the Offline capability because a request is made for each order lines registration
There are two types of
...
Online Validation
- Standard steps (steps in the standard Workflows)
- Custom steps
Standard
...
Step Validation
Standard validation can be set up in the following steps from the "standard" workflow
- ToBin / FromBin
- Lot number
- Tote
- Serial number
- Quantity
How to set it up
In the mobile configuration:
...
Code Block | ||
---|---|---|
| ||
<service id="Pick" type="Order" orderType="Pick"> <requests> <..> </requests> <validation> <lotNumberValidation online="true" documentName="ValidateLotNumber" includeCollectedValues="true"/> <serialNumberValidation online="true" documentName="ValidateSerialNumber"/> <fromBinValidation online="true" documentName="ValidateFromBin"/> <toBinValidation online="true" documentName="ValidateToBin"/> <toteValidation online="true" documentName="ValidateTote"/> <quantityValidation online="true" documentName="ValidateQuantity"/> </validation> </service> |
OnlineValidation Request
ItemNumber, lineNumber and orderBackendId are always included, followed by the step setup for validation, and previously gathered steps if setup to do so.
...
If the status is returned as Completed, then the application will take that as a positive response. Another status will be interpreted as an error and will prevent the user from going forward.
Custom
...
Step Validation
Generic step validation is a mechanism for validating any step in the workflow configuration, which does not have a specific validation element in the services section. This type of online validation still has the possibility to validate the current step and any previous step if set up to do so.
Configuration is done inside the workflow and looks as follows.
...
The request and response will look the same as the specific validation types.
Extended online validation functionality
Besides the capability to validate whether or not an entered value is accepted by the backend, several online validators also support returning additional information, and changing behavior.
Step Updates from Custom Validation
Available from v. 1.9.1
Step updates lets the backend return values as a response to an online request. The individual <stepUpdate <step /> element needs to contain a name and a value. The name is used to identify a step in the current registration collector workflow, and the value is applied to that step. Currently step updates will only be applied to steps past the validating step.
The response should look as follows, where step updates is the wrapper element containing any specific step update.
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <response xmlns="http://schemas.microsoft.com/Dynamics/Mobile/2007/04/Documents/Response" messageid="836DEC5F-097E-4300-8CC0-7FE4CB2B76A5" status="Completed"> <responseData xmlns="http://schemas.taskletfactory.com/MobileWMS/BaseDataModel"> <stepUpdates xmlns="http://schemas.taskletfactory.com/MobileWMS/WarehouseInquiryDataModel"> <step name="CustomStep" value="CustomStepValue" /> <step name="Quantity" value="2.5" interactionPermission="AllowEdit" /> // interactionPermission is only supported for the specific Quantity step/name. </stepUpdates> </responseData> </response> |
Response for Type and
...
Quantity
The generic online validator does have an extra feature when it comes to the Collector Step TypeAndQuantity step , which allows the backend to return a new display name for the scanned value.
So instead of e.g. displaying a serial number, the item number or a human-readable name can be displayed on the control.
Notice that the display value (TypeDisplay) needs to contain all the information.
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?> <response xmlns="http://schemas.microsoft.com/Dynamics/Mobile/2007/04/Documents/Response" messageid="28AEF07E-2629-46F4-B935-AB6207DC3FFC" status="Completed"> <responseData xmlns="http://schemas.taskletfactory.com/MobileWMS/BaseDataModel"> <TypeKey>TF-002</TypeKey> <TypeDisplay>TF-002 - Intense Orange</TypeDisplay> </responseData> </response> |
Extended online validation functionality
Besides the capability to validate whether or not an entered value is accepted by the backend, several online validators also support returning additional information, and changing behavior.
Returning a quantity
When utilizing lot or serial number validation, a quantity can be returned, which will be used as the quantity going forward.
Whether or not the user is allowed to edit the quantity can be set by the <ValueInteractionPermission> element.
...
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?> <response xmlns="http://schemas.microsoft.com/Dynamics/Mobile/2007/04/Documents/Response" messageid="EA9FD6AF-78C6-47DE-82CE-3EB789FAFE64" status="Completed"> <responseData xmlns="http://schemas.taskletfactory.com/MobileWMS/BaseDataModel"> <LotNumberInformation xmlns="http://schemas.taskletfactory.com/MobileWMS/WarehouseInquiryDataModel"> <Quantity>5</Quantity> <ValueInteractionPermission>ApplyDirectly</ValueInteractionPermission> </LotNumberInformation> </responseData> </response> |
Returning registration collector steps
Available from v. 1.5.12
All standard online validators can return steps as part of the response to validation.
...
The registration collector configuration element can be combined with lot and serial number information elements, and should exist on the same xml node level.
Setting Serial Number Validation Level (optional)
When using Serial Number validation, you can also set the "ValidationLevel" for how restrictive to validating serial numbers.
...
- Item: The same serial number can only be registered once per item, but multiple times across items.
- Line: A serial number can only be registered once per order line, but multiple times per order.
- Order (default): A serial number can only be registered once per order
- None: Does not check for serial number uniqueness.
Step 2: Handle validation in backend
See See How-to: Online Validation for Planned Line step
Filter by label (Content by label) | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
...