Last updated: 06.12.2023
Valid from: Opter 2023.12.00, Opter Driver for Android 2.0.1
Displaying scans of the same shipment in a block (Opter Driver)
If the driver scans several packages on the same shipment, the result of the scan can be displayed in a single block in the scan list, instead of one block per package. The package being scanned is highlighted in green and placed at the bottom of the block. This makes it easy to see which packages on the order have been scanned and which have not yet been scanned. It is also possible to add information from the package rows, such as weight and package type, so that the user can see what type of package to look for.
Step 1: Set the mobile data setting
Set the OneScanRowPermission mobile data setting to “True”. For instructions on how to set up mobile data settings, see Mobile data settings (window).
Step 2: Customise App.Design
What is displayed about each scan in the scan list is controlled via the following variables in the <scanrows> section in App.Design:
PACKAGE.PACKAGEID: Package ID. The most recently scanned package is placed at the bottom of the block. Scanned packages are highlighted in green.
PACKAGE.STATUS: Latest package status.
PACKAGE.SCANTIME: Date and time when the package was last scanned. (The variable is not shown in the code example below, but can be added on line 15. See the code example for factory settings for the <scanrows> section in The scan list in Opter Driver).
PACKAGE.RESOURCE: The resource that last scanned the package. (The variable is not shown in the code example below, but can be added on line 15. See the code example for factory settings for the <scanrows> section in The scan list in Opter Driver).
PACKAGE.HUBNAME: The terminal where the package was last scanned. (The variable is not shown in the code example below, but can be added on line 15. See the code example for factory settings for the <scanrows> section in The scan list in Opter Driver).
PACKAGE.DIMENSIONS: Package dimensions from the package row on the order. The package dimensions that are displayed are set via the PackageDimensionsString mobile data setting. For more information, seeMobile data settings (window).
PACKAGE.SCANCOMMENT: The latest scan comment for the package. (The variable is not shown in the code example below, but can be added on line 15. For more information, see The scan list in Opter Driver).
Example
<scanrows>
<row>
<item font="BOLD" itemname="CREDITEDTOOTHERRESOURCEBLOCK"/>
</row>
<row>
<item font="BOLD" itemname="CREDITEDTOOTHERRESOURCEWARNING"/>
</row>
<row>
<item font="BOLD" itemname="CREDITEDTOOTHERRESOURCE"/>
</row>
<row>
<item itemname="STATUS,PACKAGECOUNT"/>
</row>
<row>
<item itemname="PACKAGE.PACKAGEID,' ',PACKAGE.STATUS,' ',PACKAGE.DIMENSIONS" multiline="true"/>
</row>
<row>
<item itemname="ADDRESSINDEXTITLE,ADDRESSINDEX"/>
</row>
<row>
<item itemname="FREIGHTBILLTITLE,FREIGHTBILL"/>
</row>
<row>
<item itemname="PACKAGEIDTITLE,PACKAGEID"/>
</row>
<row>
<item itemname="ADDRESSFROMTITLE,ADDRESSFROM"/>
</row>
<row>
<item itemname="ADDRESSTOTITLE,ADDRESSTO"/>
</row>
</scanrows>
The above code gives the following results. The block contains several rows of information, <row></row>, and one of the rows has a line break if the information does not fit on one line, multiline="true".
STATUS,PACKAGECOUNT
PACKAGE.PACKAGEID
PACKAGE.STATUS
PACKAGE.DIMENSIONS: Retrieves PackageDimensionsString from the mobile data settings, “| Package type: {14} | Weight {1:0.##} kg | Volume: {2:0.##}”.
FREIGHTBILLTITLE: FREIGHTBILL
ADDRESSFROMTITLE: ADDRESSFROM
ADDRESSTOTITLE: ADDRESSTO
For more information about the variables, see The scan list in Opter Driver and Placeholder in App.Design.