Barcode Requirement Scenarios
Barcode Best Practices
Before you start developing barcode requirements, please read through each scenario to determine the best fit for your use case.
There are 4 different supported scenarios.
(1) Allow All Barcodes
- Use-Case: Allows workers (drivers) to provide any number of barcodes or no barcodes. This is the least restrictive method.
- Implementation: Provide no object members inside the
barcodes
array
"barcodes":[]
(2) Restrict to a fixed number of Barcodes
- Use-Case: Any barcodes can be scanned and the number of barcodes scanned must match what's configured. This is moderately restrictive.
- Implementation: Provide object members inside the
barcodes
array containing nodata
variables, and enforce the number of barcodes by using"blockCompletion":true
Note
blockCompletion
default value is false, so it may be used to customize this scenario further. For example, require 2 barcodes but allow up to any number of barcodes.
"barcodes":[
{"blockCompletion":true},
{"blockCompletion":true}
]
(3) Restrict to included Barcodes, don’t block task completion if missing
- Use-Case: ONLY matching barcodes will be accepted. However, failure to scan included barcodes will not block task completion. This is more restrictive, but gives the worker (driver) the ability to move on to the next task without outside intervention.
- Implementation: Provide object members inside the
barcodes
array containingdata
.
"barcodes":[
{"data": "aGVsbG8gd29ybGQh"},
{"data": "aG93IGFyZSB5b3US"}
]
(4) Restrict to included Barcodes, block task completion if missing
- Use-Case: ONLY matching barcodes will be accepted and all included barcodes must be scanned to complete the task. This is the most restrictive method, and requires a dispatcher to Force Complete if the driver is unable to complete all scans.
- Implementation: Provide object members inside the
barcodes
array containingdata
and enforce scanning by using"blockCompletion":true
"barcodes":[
{"data": "aGVsbG8gd29ybGQh", "blockCompletion":true},
{"data": "aG93IGFyZSB5b3US","blockCompletion":true}
]