Last updated: 2024-08-19

Applies from: Opter 2023.12.00, Opter Terminal 67.0

Customising the layout and features of Opter Terminal with Terminal.Settings

Terminal.Settings can be used to set what is displayed and what features are available in Opter Terminal. This article describes the basics and structure of Terminal.Settings.

To open Terminal.Settings in Opter’s internal editor, click on Settings > Mobile data > Settings mobile data, and then on Edit next to Terminal.Settings.

If Terminal.Settings does not appear in the list, click on an empty line in the Name column and select Terminal.Settings from the list.

Tip

All other windows in Opter are locked when Layout - apps is open, but you can switch between different windows that are already open. If you need to see information in other windows, you can open them before opening Layout - apps.

In a clean installation of Opter, Terminal.Settings looks like this.

Copy code

Factory settings

<?xml version="1.0" encoding="utf-8" ?>
<fleet101>
  <k2>
    <windowsce>
      <terminal>
        <arrivalscanning enabled="true"/><!-- enable/disable arrival scanning true or false -->
        <departurescanning enabled="true"/><!-- enable/disable departure scanning true or false -->
        <floorcheckscanning enabled="true"/><!-- enable/disable floorcheck scanning true or false -->
        <loadcarrierscanning enabled="false"/><!-- enable/disable load carrier scanning true or false -->
        <damages enabled="true"/><!-- enable/disable damage scanning true or false -->
        <terminalpod enabled="true"/><!-- enable/disable POD scanning true or false -->
        <printing enabled="false"/><!-- enable/disable print true or false -->        
        <picture selectfromgallery="true"/><!-- max width on the widest side of the image, enable/disable get photos from gallery -->
        <qrscanning enabled="false"/> <!-- start scanning with QR code instead of choosing arrival/departure, resource etc. -->
        <barcodeformats enabledformats="AZTEC,CODABAR,CODE_39,CODE_128,DATA_MATRIX,EAN_8,EAN_13,ITF,PDF_417,RSS_14,RSS_EXPANDED,UPC_A,UPC_E,UPC_EAN_EXTENSION,QR_CODE"/>
        <onescanrow enabled="true" showhub="true" showdate="true" showtime="true" showresource="true" showstatus="true" showdimensions="true" showComment="true"/>
        
        <arrival><!-- specific settings for arrival scanning-->
          <shipment visible="true" /><!-- enable disable freightbill scanning-->
          <package visible="true" /><!-- enable disable package scanning-->
          <resource mandatory="false" skipVisible="false" /><!-- if mandatory="true" you must choose resource, if mandatory="false" and skipVisible="true" it's optional to choose resource -->
          <secondaryresource selectable="true"/><!-- set to false to skip selection of secondary resource -->
          <route visible="false" choice="false" />            <!-- visible="true" show route in scan result list, choice="true" you have to choose route before scanning-->
          <nextroute visible="false"/>                        <!-- visible="true" next route is displayed in scan result list and scan details-->
          <orderdate visible="false"/>                        <!-- visible="true" sets order date displayed in scan list -->
          <autoprintsortlabel enabled="false" />                <!-- enabled="true" automatic printing of sort labels after every scan -->
          <comment enabled="false" mandatory="false"/>        <!-- enabled="true" lets you add ScanComment, use mandatory true/false to make it mandatory/optional -->
          <pod enabled="false"/>                                <!-- enabled="true" a POD dialogue is displayed after finishing scanning to add ProofOfDelivery -->
          <nextresource visible="false" />                    <!-- visible="true" sets next resource visible in scan list (SHI_NextResource) -->
          <nextorder visible="false" />                        <!-- visible="true" sets next order visible in scan list (SHI_AddressIndexFrom) -->
          <registerlater enabled="true" />          <!--- to disable registerlater function set to false, default is true -->
          <editdimensions PAC_Depth="true" PAC_Width="true" PAC_Height="true" PAC_Weight="true" PAC_LoadMeter="true" PAC_Area="true" PAC_Volume="true" PAC_Quantity="true" />
          <!--pkgdimensions><![CDATA[ add text, html and variables here ]]></pkgdimensions-->
          <!-- define own text in scan result list with simple html and variables: "PACKAGEWEIGHT", "PACKAGELOADMETER", "PACKAGEDEPTH", "PACKAGEWIDTH", "PACKAGEHEIGHT", "PACKAGEVOLUME", "PACKAGEQUANTITY", "PACKAGEAREA" -->
          <!--fbdimensions><![CDATA[ add text, html and variables here ]]></fbdimensions-->
          <!-- define own text in scan result list with simple html and variables: "DEL_CalculatedVolume", "DEL_CalculatedArea", "DEL_CalculatedLoadMeter", "DEL_CalculatedLength", "DEL_CalculatedWidth", "DEL_CalculatedWeight" -->
          <!--listdesign><![CDATA[ add text, html and variables here ]]></listdesign-->
          <!-- define own text in scan result list with simple html and variables: "ADR_AddrLine1From", "ADR_StreetFrom", "ADR_StreetNoFrom", "ADR_ZipCodeFrom", "ADR_CityFrom", "ADR_EntreCodeFrom", "ADR_PhoneFrom", "ADR_AddrLine1To", "ADR_StreetTo", "ADR_StreetNoTo", "ADR_ZipCodeTo", "ADR_CityTo", "ADR_EntreCodeTo", "ADR_PhoneTo", "PST_Name", "SHI_NextStatus", "SHI_NextResource", "NextRouteName", "ROU_Name", "SHI_AddressIndexFrom" -->
          <!--detailsdesign><![CDATA[ add text, html and variables here ]]></detailsdesign-->
          <!-- define own text in scan details with simple html and variables: "ADR_AddrLine1From", "ADR_StreetFrom", "ADR_StreetNoFrom", "ADR_ZipCodeFrom", "ADR_CityFrom", "ADR_EntreCodeFrom", "ADR_PhoneFrom", "ADR_AddrLine1To", "ADR_StreetTo", "ADR_StreetNoTo", "ADR_ZipCodeTo", "ADR_CityTo", "ADR_EntreCodeTo", "ADR_PhoneTo", "DEL_CalculatedVolume", "DEL_CalculatedArea", "DEL_CalculatedLoadMeter", "DEL_CalculatedLength", "DEL_CalculatedWidth", "DEL_CalculatedWeight", "PST_Name", "SHI_NextStatus", "SHI_NextResource", "NextRouteName", "ROU_Name", "SHI_AddressIndexFrom" -->
        </arrival>        
        <departure>                                                <!-- specific settings for departure scanning-->
          <shipment visible="true" />                            
          <package visible="true" />                            
          <resource mandatory="false" skipVisible="true" />
          <secondaryresource selectable="true"/>
          <route visible="false" choice="false" />                
          <nextroute visible="false"/>                            
          <orderdate visible="false"/>                            
          <autoprintsortlabel enabled="false" />                
          <comment enabled="false" mandatory="false"/>            
          <pod enabled="false"/>                                
          <nextresource visible="false" />                        
          <nextorder visible="false" />
          <registerlater enabled="true" /><!--- to disable registerlater function set to false, default is true -->
          <editdimensions PAC_Depth="true" PAC_Width="true" PAC_Height="true" PAC_Weight="true" PAC_LoadMeter="true" PAC_Area="true" PAC_Volume="true" PAC_Quantity="true" />
          <!--pkgdimensions><![CDATA[ add text, html and variables here ]]></pkgdimensions-->                                    
          <!--fbdimensions><![CDATA[ add text, html and variables here ]]></fbdimensions-->                                        
          <!--listdesign><![CDATA[ add text, html and variables here ]]></listdesign-->                                        
          <!--detailsdesign><![CDATA[ add text, html and variables here ]]></detailsdesign-->
        </departure>        
        <floorcheck><!-- specific settings for floor-check scanning-->
          <shipment visible="true" />                            
          <package visible="true" />                            
          <resource mandatory="false" skipVisible="true" />
          <secondaryresource selectable="true"/>
          <route visible="false" choice="false" />                
          <nextroute visible="false"/>                            
          <orderdate visible="false"/>
          <autoprintsortlabel enabled="false" />
          <comment enabled="false" mandatory="false"/>            
          <nextresource visible="false" />                        
          <nextorder visible="false" />
          <registerlater enabled="true" />  <!--- to disable registerlater function set to false, default is true -->
          <editdimensions PAC_Depth="true" PAC_Width="true" PAC_Height="true" PAC_Weight="true" PAC_LoadMeter="true" PAC_Area="true" PAC_Volume="true" PAC_Quantity="true" />
          <!--pkgdimensions><![CDATA[ add text, html and variables here ]]></pkgdimensions-->                                    
          <!--fbdimensions><![CDATA[ add text, html and variables here ]]></fbdimensions-->                                        
          <!--listdesign><![CDATA[ add text, html and variables here ]]></listdesign-->                                        
          <!--detailsdesign><![CDATA[ add text, html and variables here ]]></detailsdesign-->
        </floorcheck>        
        <damage><!-- specific settings for damage scanning-->
          <shipment visible="true" />                            
          <package visible="true" />                            
          <resource mandatory="false" skipVisible="true" />
          <secondaryresource selectable="true"/>
          <route visible="false"/>                
          <nextroute visible="false"/>                            
          <orderdate visible="false"/>                                                
          <nextresource visible="false" />                        
          <nextorder visible="false" />
          <registerlater enabled="true" /><!--- to disable registerlater function set to false, default is true -->
          <editdimensions PAC_Depth="true" PAC_Width="true" PAC_Height="true" PAC_Weight="true" PAC_LoadMeter="true" PAC_Area="true" PAC_Volume="true" PAC_Quantity="true" />
          <!--pkgdimensions><![CDATA[ add text, html and variables here ]]></pkgdimensions-->                                    
          <!--fbdimensions><![CDATA[ add text, html and variables here ]]></fbdimensions-->
          <!--listdesign><![CDATA[ add text, html and variables here ]]></listdesign-->                                        
          <!--detailsdesign><![CDATA[ add text, html and variables here ]]></detailsdesign-->
        </damage>
        <loadcarrier> <!-- specific settings for loadcarrier scanning-->
            <pod enabled="false"/> <!-- enabled="false" means that the user cannot add Proof Of Delivery (POD) after scanning packages onto a load carrier -->
        </loadcarrier>
        <pod><!-- specific settings for pod scanning-->
            <shipment visible="true" />                            
          <package visible="true" />                            
            <resource mandatory="false" skipVisible="true" />
          <secondaryresource selectable="true"/>
             <route visible="false"/>                
          <nextroute visible="false"/>                            
          <orderdate visible="false"/>                                                
          <nextresource visible="false" />                        
          <nextorder visible="false" />
          <registerlater enabled="true" /><!--- to disable registerlater function set to false, default is true -->
          <editdimensions PAC_Depth="true" PAC_Width="true" PAC_Height="true" PAC_Weight="true" PAC_LoadMeter="true" PAC_Area="true" PAC_Volume="true" PAC_Quantity="true" />
          <!--pkgdimensions><![CDATA[ add text, html and variables here ]]></pkgdimensions-->                                    
          <!--fbdimensions><![CDATA[ add text, html and variables here ]]></fbdimensions-->                                        
          <!--listdesign><![CDATA[ add text, html and variables here ]]></listdesign-->                                        
          <!--detailsdesign><![CDATA[ add text, html and variables here ]]></detailsdesign-->
        </pod>
        <print>
          <shipment visible="true" />
          <package visible="true" />
          <orderdate visible="false"/>
          <route visible="false"/>
          <nextroute visible="false"/>
          <nextresource visible="false"/>
          <nextorder visible="false"/>
          <editdimensions PAC_Depth="true" PAC_Width="true" PAC_Height="true" PAC_Weight="true" PAC_LoadMeter="true" PAC_Area="true" PAC_Volume="true" PAC_Quantity="true" />
        </print>
      </terminal>
    </windowsce>
  </k2>
</fleet101>

The sections of Terminal.Settings

Each part of Opter Terminal corresponds to a section of Terminal.Settings. The sections can be minimised and maximised by using and in the editor. If one of the sections, or a line, is not in your Terminal.Settings, a standard view is used. In this case, it can be copied from the factory settings above.

Changes made in Terminal.Settings are saved when Save is clicked in the Mobile data settings window, and are visible in the app once the terminal employees have logged out and back in again.

Tip

If any section to be customised is missing in Terminal.Settings, it can be copied from the factory settings above in order to start from there instead of building the section from scratch.

<terminal>, basic settings

What is displayed on the main menu of the app, and some other basic functions, can be defined by specifying “true” or “false” for the options here. The Log out option is always displayed and cannot be disabled.

<arrival> (Scan incoming), <departure> (Scan outgoing), <floorcheck> (Floor check), <damage> (Deviations), <loadcarrier> (Fill load carrier) and <pod> (Proof of delivery)

In these sections, the way each scan will work can be defined once they have been selected in the main menu. For example, if the user has to choose whether packages or freight bills are to be scanned and what should be displayed and happen after the scan. The same settings can be configured for all scan directions, with some exceptions. They can be set by specifying “true” or “false” for the different parameters.

Comments

Any text between <!-- and --> in the XML file is only displayed in Terminal.Settings and does not affect the layout or functionality of the app. Comments are displayed in green text in the editor.

Copy code

The comment <!-- enable/disable arrivalscanning true or false --> is for information only.

        <arrivalscanning enabled="true"/><!-- enable/disable arrivalscanning true or false -->

Tip

To restore the default settings for a section, the changes can be marked as comments by putting them between <!-- and --> instead of deleting them. This allows them to be enabled again at a later date.

Separate Opter Terminal settings for a specific terminal

Settings can be configured that apply to a scan at a specific terminal by creating a configuration file in the same format as Terminal.Settings in the terminal registry. Copy the contents of Terminal.Settings and change the settings so that they are different for that particular terminal. For more information, see Separate Opter Terminal settings for individual terminals.


See also

Configuring which terminals are displayed in Opter Terminal

Customising the scan list in Opter Terminal

Load carrier