Introduction
A "collector step" can be Online or Offline validated During the registration - as opposed to during posting.
Limitations
- Online Validation limits the Offline capabilities of the system
See also
The Standard workflow collector steps
- Lot number
- Serial number
- Quantity
From Bin
To Bin
Tote
- Customized collecter steps can be added
- Expiration Date can also be validated if collected BEFORE another step, like Lot no.. (Enable the "includeCollectedValues" attribute).
How to enable using Android
Supported validations
<validation> <lotNumberValidation online="true" documentName="ValidateLotNumber"/> <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>
Step 1: Modify the application.cfg
Add the "<validation>" tag.
<service id="Pick" type="Order" orderType="Pick"> <validation> <lotNumberValidation online="true" documentName="ValidateLotNumber" includeCollectedValues="true"/> </validation> </service>
Setting Serial Number Validation Level (optional)
When using Serial Number validation, you can also set the "ValidationLevel" for how restrictive to validating serial numbers.
<service id="Pick" type="Order" orderType="Pick"> <validation> <serialNumberValidation online="true" documentName="ValidateSerialNumber" validationLevel="Line"/> </validation> </service>
The levels are:
- 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
Step 2: Add Mobile Document Type
Make sure a document type exists and points to a processing codeunit.
Pleas use (or take inspiration from) Codeunit 6181379 "MOB WMS Whse. Inquiry"
Step 3: Write you validation code
Edit your processing codeunit.
If the validation succeeds return the OK message:
MobBaseToolbox.CreateSimpleResponse(XMLResultDoc,'OK');
If the validation fails, create an error:
ERROR(MobWmsLanguage.GetMessage('UNKNOWN_LOT'),LotNumber);
How to enable using Windows
Supported validations
<validation> <lotNumber enabled="true" requestDocumentName="ValidateLotNumber"/> <serialNumber enabled="true" requestDocumentName="ValidateSerialNumber"/> <quantity enabled="true" requestDocumentName="ValidateQuantity"/> <toBin enabled="true" requestDocumentName="ValidateToBin"/> <fromBin enabled="true" requestDocumentName="ValidateFromBin"/> <tote enabled="true" requestDocumentName="ValidateTote"/> </validation>
Lot number validation
The code snippet below shows how to enable online lot number validation.
Step 1: Modify the app.config file
<configuration xmlns="http://schemas.taskletfactory.com/MDMF/MobileWMS/Services/2009/01/ServiceConfiguration.xsd"> <ServiceType>Pick</ServiceType> ... <validation> <lotNumber enabled="true" requestDocumentName="ValidateLotNumber"/> </validation> </configuration>
Changing the Mobile Document Type
By default the application will call the Mobile Document type "ValidateLotNumber"
in the ERP system. It is, however, possible to override the name if another document handler should be invoked.
<configuration xmlns="http://schemas.taskletfactory.com/MDMF/MobileWMS/Services/2009/01/ServiceConfiguration.xsd"> <ServiceType>Pick</ServiceType> ... <validation> <lotNumber> <!-- It is possible to override the name of the document the application will call in the ERP system. By ommision it will default to the value 'ValidateLotNumber'. --> <online enabled="true" requestDocumentName="ValidateLotNumberExtended"/> </lotNumber> </validation> </configuration>
Setting Serial Number Validation Level (optional)
When using Serial Number validation, you can also set the "ValidationLevel" for how restrictive to validating serial numbers.
<ServiceType>Pick</ServiceType> <validation> <serialNumber mode="ORDER" /> </validation>
- 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
Step 2: Add Mobile Document Type
Make sure a document type exists and points to a Processing Codeunit.Step 3: Write you validation code
Edit your processing codeunit.
If the validation succeeds return the OK message:
MobBaseToolbox.CreateSimpleResponse(XMLResultDoc,'OK');
If the validation fails, create an error:
ERROR(MobWmsLanguage.GetMessage('UNKNOWN_LOT'),LotNumber);
<lotNumberValidation online="true" documentName="" includeCollectedValues="true"/>