<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tippingm</id>
	<title>Calidus HUB - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tippingm"/>
	<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php/Special:Contributions/Tippingm"/>
	<updated>2026-07-01T10:57:44Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=SDD_366558_EBB_Paper_CTL_Solution_Design&amp;diff=8390</id>
		<title>SDD 366558 EBB Paper CTL Solution Design</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=SDD_366558_EBB_Paper_CTL_Solution_Design&amp;diff=8390"/>
		<updated>2020-01-31T14:30:44Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: /* Appendix A: Table of SCRs and Ballpark Estimates */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|EBB}}&lt;br /&gt;
{{#vardefine:ClientName|EBB Paper}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' Total Logistics}}&lt;br /&gt;
{{#vardefine:SystemCode|CTLTMS}}&lt;br /&gt;
{{#vardefine:Doc_Title|EBB Paper CTL Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.7}}&lt;br /&gt;
{{#vardefine:Date|27th January 2020}}&lt;br /&gt;
{{#vardefine:Reference|366558}}&lt;br /&gt;
{{#vardefine:Year|2020}}&lt;br /&gt;
{{ #vardefine: Figure | 0 }}{{ #vardefine: Example | 0 }}&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Sample Xref:&lt;br /&gt;
{{Xref&lt;br /&gt;
|Type=Figure&lt;br /&gt;
|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}&lt;br /&gt;
|Text=Data Upload - Import screen.}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 19/12/2019 at the EBB Paper office in Farnborough.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. ERP) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
* Modifications are required to the customer systems (ERP) to achieve the functionality described in this document.&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Operational Information ==&lt;br /&gt;
Elliott Baxter is the leading family owned Independent Paper Supplier in the UK. Formed in 1922, the company is now into its fourth generation of Elliott ownership and management.&lt;br /&gt;
&lt;br /&gt;
Sales for last year were £150 million delivering a total of 168,000 tonnes. For comparison purposes, in 1980 sales were £4 million with 4800 tonnes of paper delivered.&lt;br /&gt;
&lt;br /&gt;
EBB Paper express delivery service is supported by a fleet of 95 delivery vehicles, which travel an average of 30,000 miles a year.&lt;br /&gt;
The Company makes over 1,200 deliveries per day, many of which are delivered same-day.&lt;br /&gt;
&lt;br /&gt;
EBB Paper stocks over 30,000 tonnes (50,000+ pallets) of paper. At current prices our stock value is approximately £24 million.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Main Office Address:&lt;br /&gt;
:Farnborough Sales Office&lt;br /&gt;
:Elliott Baxter and Co. Ltd.&lt;br /&gt;
:Nexus Park&lt;br /&gt;
:Lysons Avenue&lt;br /&gt;
:Farnborough&lt;br /&gt;
:Hampshire GU12 5QE&lt;br /&gt;
:Tel: 01252 379900&lt;br /&gt;
:Fax: 01252 379911&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are 9 distribution sites/sales offices:&lt;br /&gt;
* Birmingham.&lt;br /&gt;
* Bristol.&lt;br /&gt;
* Farnborough.&lt;br /&gt;
* Glasgow.&lt;br /&gt;
* Hemel Hempstead.&lt;br /&gt;
* Manchester.&lt;br /&gt;
* Newcastle.&lt;br /&gt;
* Sheffield.&lt;br /&gt;
* Thurrock.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
EBB Paper contacts:&lt;br /&gt;
* Paul Griffiths (p.griffiths@ebbpaper.co.uk) - IT.&lt;br /&gt;
* Rebecca Elliott (R.Elliott@ebbpaper.co.uk) - Manager.&lt;br /&gt;
* Shantal Liebenberg (S.Liebenberg@ebbpaper.co.uk) - Logistics&lt;br /&gt;
* Mark Ford - Operations.&lt;br /&gt;
* Terry Dixon (T.Dixon@ebbpaper.co.uk)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OBS Logistics contacts:&lt;br /&gt;
* Matt Tipping - Project Manager - Matthew.Tipping@obs-logistics.com&lt;br /&gt;
* Matt Turner - Sales/Account Manager - Matthew.Turner@obs-logistics.com&lt;br /&gt;
* Warren Wright - Sales/''CALIDUS'' VEhub - Warren.Wright@obs-logistics.com&lt;br /&gt;
* Tony Walker - Solution Design - Tony.Walker@obs-logistics.com&lt;br /&gt;
* Craig Hopcroft - Implementation - Craig.Hopcroft@obs-logistics.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Current Operational Processing ==&lt;br /&gt;
EBB paper currently use the following core systems: &lt;br /&gt;
* Great Plains ERP (GP) - order creation.&lt;br /&gt;
*  MSA (TMS) - planning.&lt;br /&gt;
* ''CALIDUS'' ePOD - execution.&lt;br /&gt;
* ''CALIDUS'' VEhub - vehicle checks.&lt;br /&gt;
* ''CALIDUS'' Portal TTM - tracking.&lt;br /&gt;
* TomTom - navigation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sales Contact and sales territories are captured as part of the order entry process in GP.&lt;br /&gt;
&lt;br /&gt;
Sales enter the orders (a note).&lt;br /&gt;
&lt;br /&gt;
Sales could (and may) order stock from any depot but use sense i.e. attempting to order from local depots first, if the stock is unavailable, order from any other depot, checking closest first.&lt;br /&gt;
&lt;br /&gt;
Opening times against delivery locations are maintained in the ERP.&lt;br /&gt;
&lt;br /&gt;
Sales can void a note (for order cancellation, or if the product quantity being ordered is reduced). If additional product is ordered after a note is created, typically the user adds an additional order for the additional product.&lt;br /&gt;
&lt;br /&gt;
The team do not amend orders - they either add new orders or they void the order and create a new one.&lt;br /&gt;
&lt;br /&gt;
Voiding the order is always discussed by the sales operative and the warehouse and transport teams before it is voided, to prevent any issues. Typically, if the order has been loaded at any point, the order is not voided as transport has begun.&lt;br /&gt;
&lt;br /&gt;
Voided orders are not exported to the planning system and are not present in the MSA view used by this planning system.&lt;br /&gt;
&lt;br /&gt;
Other order types are also entered into GP. The type is indicated by the first few characters of the order number. The types are:&lt;br /&gt;
* RTN - Customer returns.&lt;br /&gt;
* INV - Customer orders.&lt;br /&gt;
* CAL - Call-off.&lt;br /&gt;
* ISTIN - Stock transfer between depots.&lt;br /&gt;
* XINV - supplier-delivered orders - not part of the transport operation and therefore are to be ignored.&lt;br /&gt;
* COMP - Customer complaint return.&lt;br /&gt;
&lt;br /&gt;
Customer return order are always entered for movement back to the nearest depot. Once they are returned, the operation evaluates the product on the order:&lt;br /&gt;
* If it is stored at this location, it may stay there, regardless of where it originally came from.&lt;br /&gt;
* If not, a product transfer order is created to move the product through the trunk network to a depot that does store that product.&lt;br /&gt;
&lt;br /&gt;
Orders in GP are indicated as to whether they are customer collect (i.e. a desk job at a depot).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The orders are then planned in the existing planning system.&lt;br /&gt;
&lt;br /&gt;
The usual cut-off for orders is 1800 for radial deliveries.&lt;br /&gt;
&lt;br /&gt;
The current process uses zonal delivery routes. So, deliveries from each depot are routed through the trunk network through a series of 'cross-dock paths' i.e. If this order starts at depot A and is to be delivered in zone Z, it must be trunked through depots B and C first.&lt;br /&gt;
&lt;br /&gt;
EBB Paper have provided the trunk network plan, as follows:&lt;br /&gt;
&amp;lt;gallery widths=300px heights=450px perrow=2&amp;gt;&lt;br /&gt;
Image:REQ_366558_Trunk1.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Southern trunk routes}}&lt;br /&gt;
Image:REQ_366558_Trunk2.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Northern trunk routes}}&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} Subsequent to this, confirmation has been received from the customer confirming all of the cut-off and departure/arrival times of all routes. Additionally, the Sheffield trunk routes have changed times. &lt;br /&gt;
&lt;br /&gt;
When at the final depot, that depot's catchment area is broken down further into delivery zones, which are typically used to create a single driver run.&lt;br /&gt;
Each of these delivery zones should be broken down into smaller areas, to ensure that the locations are serviced in a reasonably efficient manner.&lt;br /&gt;
&lt;br /&gt;
The operation then uses the existing system to manually change the sequence of all of the orders so that they are efficient. They also use customer (location) windows to ensure that they are delivering within the correct window.&lt;br /&gt;
&lt;br /&gt;
The operation subs certain trips to 3rd-party carriers. Typically this is based on whether it is financially viable for EBB paper to run the trip themselves or for another carrier to run the trip, based on the order revenue and the carrier cost. This is a manual comparative process.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The current planning process does not distinguish between order types. It is noted that customer orders should be serviced first, then any product movements are then added to the trips if there is capacity to do so.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Any low-volume routes will then be checked for cost and revenue to determine the viability and trips will be manually modified and/or merged to create a reasonable delivery run.&lt;br /&gt;
&lt;br /&gt;
Customer Return orders (RTN) are also be planned onto the final radial trips. &lt;br /&gt;
&lt;br /&gt;
When planned in MSA, the manifests are exported to C-ePOD, which creates loads for the manifests. Currently this is limited to:&lt;br /&gt;
* Final radial trips.&lt;br /&gt;
* Customer returns.&lt;br /&gt;
* Customer collections from depot (desk collections).&lt;br /&gt;
Trunk trips are currently excluded, as there is not enough information on the MSA interface to determine which trunk trips should be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OBS have requested EBB Paper to provide extracts of the configuration data currently used by the planning system with respect to:&lt;br /&gt;
* cross-dock paths for the trunk network.&lt;br /&gt;
* zonal breakdown.&lt;br /&gt;
The intention is to potentially use this data to upload directly into CTL for system testing (as a start point).&lt;br /&gt;
&lt;br /&gt;
OBS have analysed the trunk routing information provided and transposed that into data. &lt;br /&gt;
OBS have provided a breakdown of the current routing to EBB Paper for validation, and to confirm the normal defaults i.e. trailer type, cut-off, times, etc.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Subsequent to this, confirmation has been received from the customer confirming all of the cut-off and departure/arrival times of all routes. Additionally, the Sheffield trunk routes have changed times. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the order is in GP, the operation produces pick sheets to pick the stock, and driver manifests to load the vehicles.&lt;br /&gt;
&lt;br /&gt;
This leads to a process whereby any orders added to a plan after initial loading being placed on a separate manifest for the same vehicle, so that they can get a distinct sheet showing the new products to be loaded. Experience has shown that, if they do not do this, the operations may load product twice (unaware that it has been loaded already), which then leads to additional picking of product for the subsequent orders (whose picked product has been inadvertently loaded for the first order).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The existing Driver Manifests are as follows:&lt;br /&gt;
* A manifest summary sheet, showing all stops, orders and quantity of products.&lt;br /&gt;
* A signature line, so that they can use this sheet to capture signatures in the event of a failure.&lt;br /&gt;
* A delivery note per order on the manifest, showing the order information, deliverable stock and quantities.&lt;br /&gt;
This is printed onto pro-forma stock.&lt;br /&gt;
&lt;br /&gt;
EBB Paper have provided electronic copies of this documentation:&lt;br /&gt;
&amp;lt;gallery widths=300px heights=450px perrow=2&amp;gt;&lt;br /&gt;
Image:REQ_366558_ProForma.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Pro-forma stock}}&lt;br /&gt;
Image:REQ_366558_ExistingManifest.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Existing manifest}}&lt;br /&gt;
Image:REQ_366558_ExistingDeliveryNote.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Existing Delivery Note}}&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operation trunks the picked product to the correct out-base for final delivery through the trunk network of vehicles. As previously mentioned, this is not executed by C-ePOD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C-ePOD is used to perform the final radial deliveries and collection of returns. &lt;br /&gt;
&lt;br /&gt;
TomTom navigation is used to navigate to the destination of the job, and then the product quantities delivered or collected are captured on the C-ePOD application, as well as the customer's signature.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The paper delivery notes and driver manifests are used in the event of any system failure. The customers sign the manifest in the provided signature line.&lt;br /&gt;
&lt;br /&gt;
The current process in use to electronically capture these manual PODs is to use the C-ePOD system when back on line, complete the job as per the sheet and then use the unmanned location process to take an image of the signature on the manifest/delivery note. This then uploads as normal to TTM. Several alternative options were discussed in the start-up meeting, but this process seems most consistent and easiest for the operation to follow.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C-ePOD is also used at the depot to complete customer collections, utilising a WAREHOUSE user.&lt;br /&gt;
&lt;br /&gt;
EBB identified that there is an existing issue with customer collections. &lt;br /&gt;
&lt;br /&gt;
It is noted that this is an understood limitation of the system, and is caused by customers not collecting on the day advised.&lt;br /&gt;
The users then must move the job onto a load on the following day and close the original load to continue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operation makes use of Portal TTM to:&lt;br /&gt;
* track completion of trips and orders.&lt;br /&gt;
* run extracts of orders.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Currently, the operation utilises some extract from the Portal TTM system to provide information on the completed orders. The operation has recently raised concerns that these reports do not include enough information (i.e. the reason codes and descriptions of any cancelled or amended product, or a cancelled order).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Overview of Solution ==&lt;br /&gt;
The core systems for the business are an externally-provided ERP (GP), with OBS Logistics' systems as follows:&lt;br /&gt;
* Great Plains ERP (GP) - order entry.&lt;br /&gt;
* ''CALIDUS'' Total Logistics TMS (CTL) - planning.&lt;br /&gt;
* ''CALIDUS'' ePOD (C-ePOD) - execution.&lt;br /&gt;
* ''CALIDUS'' VEhub (C-VEhub) - vehicle checks.&lt;br /&gt;
* ''CALIDUS'' Portal TTM (TTM) - tracking.&lt;br /&gt;
* TomTom - navigation.&lt;br /&gt;
&lt;br /&gt;
{{Note}} With the exception of CTL, all other systems have already been installed and are in use by the operation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Solution_Schematic.png|border|600px]]&lt;br /&gt;
{{Xref&lt;br /&gt;
|Type=Figure&lt;br /&gt;
|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}&lt;br /&gt;
|Text=Solution Schematic}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operational processes will be:&lt;br /&gt;
*	Orders are entered into the ERP. &lt;br /&gt;
*	CTL will pick up the orders from the ERP at regular intervals. A bespoke interface in CTL will poll for new orders.&lt;br /&gt;
*	CTL will automatically plan orders onto trips through fixed route templates, planning them onto timed trunk network trips and final radial trips. The orders will be broadly sequenced by zones within regional operating areas. &lt;br /&gt;
*	CTL users will have the facility to amend the planned trips, and to manually plan any orders that do not plan onto the trips. &lt;br /&gt;
*	CTL users will resource the trips, applying a carrier identifying the depot fleet. When a carrier is selected, they will assign vehicle and trailer to the trips. For 3rd-party carriers, the existing process will continue of assigning a warehouse driver and vehicle (e.g. WAREHOB03).&lt;br /&gt;
*	CTL users will send the trips through to the existing implementation of ''CALIDUS'' ePOD.&lt;br /&gt;
*	C-ePOD executes jobs and captures the actual delivery quantities, additional information and signatures. &lt;br /&gt;
*	This information will automatically debrief the orders and trips in CTL.&lt;br /&gt;
*	TomTom Nav is used for navigation to the destination.&lt;br /&gt;
*	C-ePOD will update ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking, as it currently does.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ERP will not be updated with the actually delivered/collected quantities - this information will be held within the ''CALIDUS'' systems and can be viewed in CTL, C-ePOD and C-PORTAL.&lt;br /&gt;
&lt;br /&gt;
The vehicles use the TomTom PRO 8xxx devices to run ''CALIDUS'' VEhub, the C-ePOD client application and the built-in TomTom navigation applications. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Static and Configuration Data ==&lt;br /&gt;
A list of branches and their details has been provided by the customer.&lt;br /&gt;
&lt;br /&gt;
Roughly 30 new delivery addresses are created each day.&lt;br /&gt;
&lt;br /&gt;
Only one organisation is required within the system (EBB) - the system does not need to be broken down to division.&lt;br /&gt;
&lt;br /&gt;
Certain data is required for configuration of CTL, such as:&lt;br /&gt;
*	Customers (in this case, contractual agreements between EBB and a customer, rather than a delivery address).&lt;br /&gt;
*	Locations.&lt;br /&gt;
*	Location Zones.&lt;br /&gt;
*	Cross-dock routes.&lt;br /&gt;
*	Rates.&lt;br /&gt;
*	UOMs.&lt;br /&gt;
*	Transport units.&lt;br /&gt;
*	Product Types.&lt;br /&gt;
*	Depots.&lt;br /&gt;
*	Sales territories.&lt;br /&gt;
*	Drivers.&lt;br /&gt;
*	Shift patterns.&lt;br /&gt;
*	Driver shifts.&lt;br /&gt;
*	Vehicles.&lt;br /&gt;
*	Vehicle Types.&lt;br /&gt;
*	Trailer Types.&lt;br /&gt;
*	Trailer IDs.&lt;br /&gt;
This information has been requested from EBB Paper.&lt;br /&gt;
&lt;br /&gt;
EBB Paper will investigate extracting static data from the existing systems (both planning and ERP) to aid in evaluation and implementation.&lt;br /&gt;
&lt;br /&gt;
OBS will then attempt to use this to drive upload of this existing data into CTL pre-implementation of the test system. Extensive implementation time will be required to upload this information from the existing systems and create a scripted process that can be repeated during implementation to test and for go-live.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Once EBB's test CTL system is initially loaded, it will be EBB's responsibility to maintain any static data in the system. Before the system goes live, a data import of static data will be made into the production system from the test system, to ensure that the system is configured exactly as test before go-live.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customers ===&lt;br /&gt;
{{Note}} Customers in CTL determine the rate and account information, and therefore the trip cost. Each order created must belong to a customer in CTL.&lt;br /&gt;
&lt;br /&gt;
The customer code will be extracted from the view from the ERP and created within CTL if this does not already exist. It is expected that this will include basic rate information to generate product costs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Customers can be then maintained within CTL in the customers maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Customers.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Customers maintenance}}&lt;br /&gt;
&lt;br /&gt;
This will allow the operation to maintain the following information:&lt;br /&gt;
* Address.&lt;br /&gt;
* Accounting information.&lt;br /&gt;
* Contacts.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each customer can and should be assigned to a customer group. Only a single customer group is required - EBB.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sales Territory ===&lt;br /&gt;
After discussion with EBB, the sales territory will be set up through the order groups and this will be used against each order. This will allow users to filter and report on orders for particular sales territories as well as delivery depots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Order groups can be maintained within CTL in the order groups maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Order_Groups.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Order groups maintenance}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Locations ===&lt;br /&gt;
Locations in CTL are used for multiple purposes, determined by the location type. It is expected that the following types will be available:&lt;br /&gt;
* CUSTOMER - Delivery/collection locations.&lt;br /&gt;
* RDC - Depot (RDC) locations.&lt;br /&gt;
&lt;br /&gt;
Locations types are configurable in CTL using the location types maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Location_Types.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Location types maintenance}}&lt;br /&gt;
&lt;br /&gt;
However, location types are expected to be static and will be set up as part of the implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Locations are maintained in the locations maintenance screen. All locations of all types above will be created within the CTL system with unique codes.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Locations.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Locations maintenance}}&lt;br /&gt;
&lt;br /&gt;
This will allow the operation to maintain the following information:&lt;br /&gt;
* Address.&lt;br /&gt;
* Contact information.&lt;br /&gt;
* Loading/Unloading rates.&lt;br /&gt;
* Opening and Closing times - EBB Paper will provide a list of time windows for the locations, which will be created as part of the implementation of the system.&lt;br /&gt;
* Resource restrictions - EBB Paper will provide a list of resource (i.e. vehicle type) restrictions, which will be created as part of the implementation.&lt;br /&gt;
&lt;br /&gt;
It is expected that locations will be maintained within the ERP and will be created and/or amended as part of the orders interface from the ERP.&lt;br /&gt;
&lt;br /&gt;
Further, it is expected that all existing locations that have been used by the C-ePOD system up until this point will be loaded into the system as part of the implementation of the system. OBSL will map the loosely-formatted EPOD Customer data to the strongly-formatted data in CTL (i.e. town, county).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In terms of location contacts, there is very little contact data currently passed to C-ePOD and available for extract, so this will not be imported. It will also not be necessary to import this on the orders.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Location Zones ===&lt;br /&gt;
Location zones are used by the system to group locations for routing through the fixed route templates.&lt;br /&gt;
&lt;br /&gt;
Location zones are created and maintained within CTL in the location zones maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Location_Zones.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Location Zones Maintenance}}&lt;br /&gt;
&lt;br /&gt;
The zones are expected to be set up to replicate the existing zones and areas used within the existing planning solution. These are not expected to be modified extensively after implementation of the system.&lt;br /&gt;
&lt;br /&gt;
EBB will provide a data extract of these postal ranges for evaluation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Cross-dock routes ===&lt;br /&gt;
Cross-dock routes (i.e. the trunking network) will be maintained in the system through the use of fixed route templates.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Routes1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Fixed route template maintenance}}&lt;br /&gt;
&lt;br /&gt;
Fixed route templates will be created for the following routes:&lt;br /&gt;
* All trunk routes.&lt;br /&gt;
* All radial collection/delivery routes.&lt;br /&gt;
&lt;br /&gt;
The fixed route templates can include restrictions such as:&lt;br /&gt;
* Operational days.&lt;br /&gt;
* Owning depot.&lt;br /&gt;
* Carrier or Vehicle type.&lt;br /&gt;
* Max trips per day.&lt;br /&gt;
* Cut-off times.&lt;br /&gt;
* Fixed times.&lt;br /&gt;
&lt;br /&gt;
Trunk routes will be created to route between the depots, cross-docking the delivery orders' product through the depots until the final regional delivery depot is reached. These route templates will be identified as a trunk route template. Trips will be created for each day as orders are planned onto the routes. These trips will be stamped as trunk routes.  &lt;br /&gt;
&lt;br /&gt;
The radial routes will be used to create trip for the  final delivery of delivery orders and the collection of collection orders. Sub-zones will be used to partially sequence the orders on the trips.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Loading/Unloading Rates ===&lt;br /&gt;
Loading and unloading rates are used per location to determine how long it will take to load or unload at that location. This includes the amount of time to handle individual transport units.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Load_Rates.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Load rate maintenance}}&lt;br /&gt;
&lt;br /&gt;
So, a basic amount of time can be set for the general arrival/departure at a location, as well as an amount of time to handle each TU.&lt;br /&gt;
&lt;br /&gt;
For example, one location may include a lengthy approach which takes 3 minutes to navigate, whereas another may be right outside the delivery point. In that case, the first location may have a basic rate of 6 minutes, whereas the second may only allow for a minute.&lt;br /&gt;
&lt;br /&gt;
The amount of time taken to handle each TU at the locations would be the same i.e. x minutes per TU.&lt;br /&gt;
&lt;br /&gt;
It is expected that TU types will be defined as part of the interface from the ERP, and that standard loading/unloading rates will be used against RDCs and customer delivery locations. &lt;br /&gt;
&lt;br /&gt;
There are also certain known exceptions to waiting times, for example Desktop locations, where the driver delivers the product to many individual locations on a single delivery. These are known locations. EBB will create specific loading/unloading rates for these locations and apply them as required.&lt;br /&gt;
&lt;br /&gt;
Once the waiting times are determined at each site through live running of the system, EBB can then start to input more accurate load/unload times to improve planning. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The rates are expected to be configured initially as follows:&lt;br /&gt;
* Depots will have their own loading/unloading rates of 30 minutes.&lt;br /&gt;
* Customer locations will have a standard 5 minute delivery time.&lt;br /&gt;
* Desktop locations will have a 30 min rate and will be assigned to specific locations, known to EBB.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== UOMs ===&lt;br /&gt;
Each order will contain products that have specific product types, expected to be one of:&lt;br /&gt;
* 1.&lt;br /&gt;
* 100.&lt;br /&gt;
* 1000.&lt;br /&gt;
* 1000sqm.&lt;br /&gt;
* 5000.&lt;br /&gt;
* BOTTLE.&lt;br /&gt;
* BOX.&lt;br /&gt;
* BOXES.&lt;br /&gt;
* CHARGE.&lt;br /&gt;
* EACH.&lt;br /&gt;
* ENV.&lt;br /&gt;
* ENVS.&lt;br /&gt;
* M2.&lt;br /&gt;
* METRES.&lt;br /&gt;
* Misc.&lt;br /&gt;
* Pack.&lt;br /&gt;
* PAN.&lt;br /&gt;
* REEL.&lt;br /&gt;
* ROLL.&lt;br /&gt;
* SETS.&lt;br /&gt;
* Sheet.&lt;br /&gt;
* SHEETS.   &lt;br /&gt;
* TIN.&lt;br /&gt;
* TONNE.&lt;br /&gt;
* TONNES.&lt;br /&gt;
&lt;br /&gt;
There is no concept of UOM within CTL to hold this information.&lt;br /&gt;
&lt;br /&gt;
These instead will be held as transport units within CTL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Transport units (TUs) are used to determine the loading/unloading rates and to estimate the vehicle fill, based on the quantity of product.&lt;br /&gt;
&lt;br /&gt;
Transport units may be maintained through the transport units maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Transport_Units.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Transport units maintenance}}&lt;br /&gt;
&lt;br /&gt;
Each transport unit will be configured with dims, weight and BUE (base unit equivalent) - CTL will use this, combined with the quantity against an order line, to determine the area, footprint and weight of the product being stored and therefore the capacity of the vehicle. &lt;br /&gt;
&lt;br /&gt;
It is expected that TU types will be defined as part of the interface from the ERP, and that standard loading/unloading rates will be used against RDCs and customer delivery locations.&lt;br /&gt;
&lt;br /&gt;
{{Note}}&lt;br /&gt;
* EBB Paper are reviewing the definitions of the transport units in use in the operation as part of this project, to more accurately represent size of products.&lt;br /&gt;
* Transport units are being reviewed by and will be maintained by the customer.&lt;br /&gt;
* This review may result in changed UOMs, for example SHEETS may become SHEETS_SML, SHEETS_STD, SHEETS_LGE, SHEETS_XL. This will reflect in the data sent to the C-ePOD system, and therefore the UOMs on the POD note from C-ePOD. This change in UOM is not expected to present a problem to EBB Paper or to their customers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Products ===&lt;br /&gt;
Products will be held as product types within CTL.&lt;br /&gt;
&lt;br /&gt;
EBB have confirmed the following information:&lt;br /&gt;
* Product type description should never change.&lt;br /&gt;
* A single product is always ordered in the same UOM.&lt;br /&gt;
The exception is FOC products, where the description will change with every order. There are multiple FOC products, for each UOM, for example FOC_SHEETS, FOC_ENVS, etc.&lt;br /&gt;
&lt;br /&gt;
OBSL conducted analysis of the existing data within C-ePOD and the following was found:&lt;br /&gt;
* There are many examples of the same product code with a different description, for example: 002.12005: &amp;quot;... CUT to A2&amp;quot;, 02.16001: &amp;quot;... HAS BEEN CUT TO&amp;quot;. It has been confirmed that the sales team should not be doing this.&lt;br /&gt;
* There are examples where the same UOM (SHEETS) are used on many different product sizes. e.g. from 210*297 up to 720*1020. As this is the transport unit in CTL, this directly affects the area and therefore capacity of the vehicle. EBB agreed to maintain these UOMs in CTL.&lt;br /&gt;
* There are 18 examples of multiple UOMs used on the same product e.g. LF1C75-320-75: 1/PACK, ZZZ100204: TONNE/TONNES, ZZZ101153: 1000/SHEETS, 130.075: BOX/SHEETS. &lt;br /&gt;
* There are many examples of products without a UOM as well. When CTL creates a new product type, the TU will default to &amp;quot;SHEETS&amp;quot; if it has not been provided.&lt;br /&gt;
&lt;br /&gt;
OBSL will send through examples of duplicated product types and examples of product types using multiple UOMs in C-ePOD, for EBB to analyse and provide instruction to the sales team as to the proper usage when CTL is implemented.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Product types may be maintained in the product types maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Product_Types.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Product types maintenance}}&lt;br /&gt;
&lt;br /&gt;
Each product type in the system is then used to determine the TU type that the product is stored on, and therefore the BUE and vehicle fill that this quantity of product would use on a vehicle. This can also store the default description, dims and weight of the product. These will be created when orders are created, then not updated from that point.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This process of determining the product type and TU type will need to be modified (as part of the orders interface from the ERP) to calculate the total quantity of product (multiplying quantities for example) and will require additional fields against the product type. This is accounted for in the orders interface change listed in following sections. This will be a bespoke interface for EBB.&lt;br /&gt;
&lt;br /&gt;
Note that any additional UOMs that have not yet been used in CTL will be created with default values as part of this interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Salesperson ===&lt;br /&gt;
Sales territory and salesperson are required to be stored against each order created from the ERP. This information is required to be passed through to the C-ePOD system for reproduction onto the POD paperwork.&lt;br /&gt;
&lt;br /&gt;
Sales territory will be stored as the group of the order.&lt;br /&gt;
&lt;br /&gt;
There is no concept of salesperson within CTL. However, it is possible to store additional information against orders within the system, utilising order parameters.&lt;br /&gt;
&lt;br /&gt;
Order parameters are user-definable and can be maintained in the order parameters maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Order_Parameters.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Order parameters maintenance}}&lt;br /&gt;
&lt;br /&gt;
These can then be applied to orders created in the system.&lt;br /&gt;
&lt;br /&gt;
It is expected that a new order parameters will be created to hold this information and that this information will be automatically populated when creating orders through the orders interface. &lt;br /&gt;
&lt;br /&gt;
{{Note}} If orders are created manually within CTL (which is not expected to be part of the process in this implementation), the user must manually add this information to the orders created - the system will not require the entry of these parameters.&lt;br /&gt;
&lt;br /&gt;
This parameter process will be used to store any other non-essential order information that CTL is required to store for the EBB operation (typically to pass on to C-ePOD). This may include (but not limited to) the following:&lt;br /&gt;
*  Loading location.&lt;br /&gt;
*  Order creation date.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Order Types ===&lt;br /&gt;
Order type is not a concept in CTL.&lt;br /&gt;
&lt;br /&gt;
However, CTL does contain the concept of service levels, which are user-maintainable through the service levels screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Service_Levels.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Service levels maintenance}}&lt;br /&gt;
&lt;br /&gt;
The service levels will be configured to represent the order types within the system, as follows:&lt;br /&gt;
* RTN - Customer return.&lt;br /&gt;
* INV - Customer orders.&lt;br /&gt;
* CAL - Call-off.&lt;br /&gt;
* ISTIN - Stock transfer.&lt;br /&gt;
* COMP - Customer complaint return.&lt;br /&gt;
* COLL - Customer collection.&lt;br /&gt;
&lt;br /&gt;
Orders will be allocated a service level through the interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will be modified to indicate whether service levels (order types) are excluded from automatic planning. This will be done as part of the scheduling engine, specified later in this document.&lt;br /&gt;
&lt;br /&gt;
Most orders are day 1 for day 2 (i.e. customer deliveries INV and CAL).&lt;br /&gt;
&lt;br /&gt;
Some orders specify a delivery date and time outside of this range.&lt;br /&gt;
&lt;br /&gt;
The operation does not normally make a specific delivery run to collect a customer return (type COMP/RTN): the, but instead plans them for when they are next visiting that location. This is usually within 3 days. The operation will manually plan these orders.&lt;br /&gt;
&lt;br /&gt;
All exceptions will be handled and planned manually by EBB.&lt;br /&gt;
&lt;br /&gt;
Stock Transfers (ISTIN) will be excluded from automatic scheduling and will be planned manually by the operation.&lt;br /&gt;
&lt;br /&gt;
Customer (desk) collections will be excluded from automatic scheduling and will be planned manually by the operation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Reason Codes ===&lt;br /&gt;
Reason codes are used for many purposes in CTL-TMS, mainly:&lt;br /&gt;
* Delivery exceptions.&lt;br /&gt;
* Resource availability.&lt;br /&gt;
&lt;br /&gt;
Reason codes are categorised by the type, which can be maintained.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Reason_Types.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Reason types maintenance}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Delivery reason codes can be maintained in the Delivery Reason Codes maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Delivery_Reasons.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Delivery reason codes maintenance}}&lt;br /&gt;
&lt;br /&gt;
These are used when debriefing orders and product quantities, in exception circumstances. These match the reason codes used in C-ePOD when executing the jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Resource reason codes can be maintained in the Resource Reason Codes maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Resource_Reasons.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Resource reason codes maintenance}}&lt;br /&gt;
&lt;br /&gt;
These are used in the resource diary to mark resources (drivers, vehicles, trailers) as unavailable on certain dates and times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Reason codes will be extracted out of C-ePOD and entered into CTL data as part of the implementation of the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Resources ===&lt;br /&gt;
==== Carriers ====&lt;br /&gt;
Carriers are assigned to trips for execution. The carrier is the top-level resource assigned to a trip, which then determines which drivers, vehicles and trailers are available to be assigned to the trip.&lt;br /&gt;
&lt;br /&gt;
Carriers are maintained in the carriers screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Carriers.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Carriers maintenance}}&lt;br /&gt;
&lt;br /&gt;
Here, the following can be maintained against the carrier:&lt;br /&gt;
* Details - the carrier type and whether the carrier must start and end at a hub location.&lt;br /&gt;
* Payments - accounting and rate/tariff information, for generation of trip costs.&lt;br /&gt;
* Vehicle Type - vehicle types used by the carrier.&lt;br /&gt;
* Contacts - contacts for the carrier&lt;br /&gt;
* Addresses - identifying Billing Address; Collection Address; Delivery Address; Headquarters if required.&lt;br /&gt;
* Restrictions for the carrier, such as:&lt;br /&gt;
** Maximum weight and volume carried.&lt;br /&gt;
** Product Type.&lt;br /&gt;
** Location Zone.&lt;br /&gt;
** Service Level.&lt;br /&gt;
** Transport Unit.&lt;br /&gt;
** Operating Locations.&lt;br /&gt;
&lt;br /&gt;
Carriers are defined by types that indicate whether they are home fleet or 3rd-party. Carriers will be set up for each depot within the EBB network. Drivers, vehicles and trailers will then be allocated to the carriers.&lt;br /&gt;
&lt;br /&gt;
A single carrier will be created per depot, with the same name as the depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3rd party carriers are required. currently that is known to be (not limited to):&lt;br /&gt;
* PALLETLINE.&lt;br /&gt;
* UK Mail.&lt;br /&gt;
* ACL.&lt;br /&gt;
&lt;br /&gt;
No 3rd-party carriers will be set up in the system - instead these will be identified by ware WAREHOB driver for the depot's carrier. &lt;br /&gt;
&lt;br /&gt;
Trips assigned to 3PC will still be sent to C-ePOD, will be sent to the normal C-ePOD site, but will be sent as user WAREHOBxxx.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} &lt;br /&gt;
* This configuration will NOT allow for different rates per carrier.&lt;br /&gt;
* Changing to add a 3rd-party carrier as a full carrier (rather than just a warehouse user) may require additional development at a later stage, not included in this project or the costs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Drivers ====&lt;br /&gt;
Drivers must be applied to trips during the resourcing process.&lt;br /&gt;
&lt;br /&gt;
Drivers and their availability are maintained in the drivers maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Drivers.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Drivers maintenance}}&lt;br /&gt;
&lt;br /&gt;
Here, drivers can be:&lt;br /&gt;
* created with full reference details, amended or deleted.&lt;br /&gt;
* assigned to carriers.&lt;br /&gt;
* excluded from working for customers or at locations.&lt;br /&gt;
* have a shift pattern assigned.&lt;br /&gt;
* have their availability modified for non-working time or holidays, for example.&lt;br /&gt;
&lt;br /&gt;
Shift patterns can be created or modified in the shift pattern maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Shift_Patterns.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Shift Patterns maintenance}}&lt;br /&gt;
&lt;br /&gt;
All drivers for all depots will be created and maintained by the EBB operational staff. This includes the warehouse staff e.g. WAREHOB03.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Currently resource availability is managed through a combination of a spreadsheet and/or calendar.&lt;br /&gt;
&lt;br /&gt;
CTL contains a number of facilities to manage resource availability. However, EBB must note that CTL is not a resource management system.&lt;br /&gt;
&lt;br /&gt;
Resources can be limited by:&lt;br /&gt;
* Availability calendar, showing when this resource is unavailable and why.&lt;br /&gt;
* Driver shifts.&lt;br /&gt;
* Vehicle Off-road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Resource_Availability1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Driver availability calendar}}&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Resource_Availability2.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Full-screen calendar}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
EBB described that they would ideally like a total view of all resources on a single calendar, showing who/what is unavailable on certain dates, so that they can use this to manage resource requirements, driver holiday requests, etc.&lt;br /&gt;
&lt;br /&gt;
Note that CTL allows the user to identify a driver resource, then click the calendar section and add in unavailability information. Users can also use this to set the driver's shift. The same calendar can be accessed from individual vehicles (to make them unavailable at certain times/dates). Vehicles can also be indicated as being off-road or on-road, by checking or un-checking the VOR flag.&lt;br /&gt;
&lt;br /&gt;
The single driver or vehicle calendar can be shown full-screen, but that there is not a single calendar view that shows all of a particular resource type, to give the customer a full view. This can be developed at additional cost.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Full resource calendar.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The resource availability information could be extracted from the system through the data extracts to that the operation can get a full view from that extract, rather than funding the development of a full resource calendar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Vehicle and Trailer Types ====&lt;br /&gt;
Categories are created that define whether vehicle types of this category have transport movement capability and/or storage capability.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Vehicle_Categories.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Vehicle Categories maintenance}}&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
* a trailer has storage capability but no transport movement capability.&lt;br /&gt;
* a tractor unit has transport movement capability but no storage capability.&lt;br /&gt;
* a van has both.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Types are then created for each tractor, trailer and/or van in the operation. &lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Vehicle_Types.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Vehicle Types maintenance}}&lt;br /&gt;
&lt;br /&gt;
These define the general outline of vehicles of this type, such as the maximum weight, dims, max BUE and any additional equipment.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning}} All vehicles are 15T. All are capable of pulling a trailer. A trailer can be added to the trip. This should increase the volume accessible to the trip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Vehicles and Trailers ====&lt;br /&gt;
Vehicles in CTL define all available transport types, including tractor, trailer and van, through the category and type.&lt;br /&gt;
&lt;br /&gt;
Vehicles can be created in the vehicles maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Vehicles.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Vehicles maintenance}}&lt;br /&gt;
&lt;br /&gt;
Here, the individual vehicles are entered, identifying the vehicle type. The specific characteristics of a that vehicle may be maintained, such as:&lt;br /&gt;
* Vehicle code (typically the registration plate or trailer ID).&lt;br /&gt;
* Make/Model/Livery.&lt;br /&gt;
* VIN number.&lt;br /&gt;
* Fleet number.&lt;br /&gt;
* Fuel type.&lt;br /&gt;
* Fuel efficiency.&lt;br /&gt;
* ODO reading.&lt;br /&gt;
* Registration date.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicles and trailers are carrier resources and must be assigned to a carrier.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicles, like drivers (above) can be made available or unavailable through the resource calendar. The vehicle may also be marked as off-road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Orders ==&lt;br /&gt;
Orders will continue to be created in exactly the same way as they are now, within the ERP.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== ERP-CTL Orders Interface ===&lt;br /&gt;
The operation will expect to execute the following movement types:&lt;br /&gt;
* Radial delivery.&lt;br /&gt;
* Customer collection.&lt;br /&gt;
* Customer returns.&lt;br /&gt;
* Trunk movements.&lt;br /&gt;
&lt;br /&gt;
Customer collections will be interfaced to CTL on a separate manifest per depot, but with a driver of &amp;quot;WAREHOUSE&amp;quot;. {{Note}} The view MSA contains a column that identifies whether this is a customer collection (column CustColl).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are also supplier direct to customer deliveries. As these are not executed through the EBB network, they will not be interfaced into CTL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Bespoke import interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} A version of this interface has already been written as part of the C-ePOD integration. This is not suitable for implementation into CTL (mainly because it is primarily driven from a file sent from the MSA TMS already in place). This, however, may be used as a template as to how orders are created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The team do not amend orders - they either add new orders or they void the order and create a new one. However, the interface will be written in such a way as to update orders if they already exist, so that re-processing a failed order will not prevent this interface from working as expected.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The import of orders will be designed to utilise the static data created in CTL. Certain areas, such as DU/TU (Despatch/Delivery unit or transport unit) are used to determine the vehicle fill through a percentage BUE (base unit equivalent). The process will apply the product and UOM to the product type and TU type, which will represent a proportionate vehicle fill. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A scheduled import process will be created on the system, running at a timed interval. During implementation, the existing interface in C-ePOD will be disabled, as C-ePOD will now be receiving all orders and trips from CTL through the standard C-ePOD web-service interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The current C-ePOD order import is triggered by the transport plan. The process then retrieves the details of only the orders on that transport plan.&lt;br /&gt;
As CTL will be responsible for creating the transport plan, this will require a change in how this is triggered.&lt;br /&gt;
&lt;br /&gt;
Extracting data for orders will be direct from the MSD data, taken from the existing view of data.&lt;br /&gt;
&lt;br /&gt;
The view currently shown 14 days of orders.&lt;br /&gt;
&lt;br /&gt;
It will not be efficient to retrieve all orders from the view and check whether they have changed. As this will be happening very regularly (the import is expected to look for orders every few minutes), the process must be efficient.&lt;br /&gt;
&lt;br /&gt;
In order to make in the new order import work efficiently, the MSA view must change to show:&lt;br /&gt;
* Voided orders.&lt;br /&gt;
* Creation Date/Time.&lt;br /&gt;
&lt;br /&gt;
This will be prototyped by EBB paper as a new view within the existing database for the purpose of evaluation of the new CTL interface. Note that voided orders may instead be through a different view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Voided orders in the interface will be handled as follows:&lt;br /&gt;
* The order will be moved to CANCELLED status.&lt;br /&gt;
* The order will be automatically unplanned from all trips, as long as none of the trips have not yet started (i.e. not status EN-ROUTE or COMPLETED).&lt;br /&gt;
&lt;br /&gt;
Any order that is cancelled after it has begun being transported by the operation (i.e. the order is on any trip that is EN-ROUTE or COMPLETED status) must be manually handled. In this case, this means manually un-planning the cancelled order from any trips that are no longer required and moving the product back to the depot that will store the order's product. The raising of this stock transfer movement will be at the discretion of the operation.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Voided orders removed from trips will change the product that is delivered and also loaded/unloaded by the operation on the trunk trips. It is likely that the operational documents affected by this will require reproduction by the operation. This should be achieved when the order is taken off trips by the operation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Opening times against delivery locations are maintained in the ERP. These delivery times must be maintained against the orders in CTL.&lt;br /&gt;
&lt;br /&gt;
These delivery windows will be transposed directly against the customer orders. These will be visible against the orders and may then be used when planning.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface will search for all orders created since the last time that the interface ran. For each order found, the interface will create all details of the order, including:&lt;br /&gt;
* References - the order references, expected to be the CTL order number, the external order number and the customer's reference.&lt;br /&gt;
* Service level - the service level will be determined from the first few characters of the order reference. If the order is specified as customer collect, this will be identified as a different service level. The service level will identify whether the order may be automatically planned (through the scheduling engine, described in following sections).&lt;br /&gt;
* Instructions - any order-specific instructions.&lt;br /&gt;
*  Locations - the origin and destination (from and to) locations. Any locations that do not already exist will be created by this interface.&lt;br /&gt;
** If AddrCode is &amp;quot;0000&amp;quot;, then CUSTNMBR is the location AND the customer.&lt;br /&gt;
** If AddrCode is NOT &amp;quot;0000&amp;quot;, the CUSTNMBR is the Customer and AddrCode is the Location.&lt;br /&gt;
*  Scheduling - the collection and delivery windows for the order.&lt;br /&gt;
*  Contacts - any contacts for the order. As already mentioned, it is unlikely that there will be any contact information available to import.&lt;br /&gt;
*  Requirements/Charges - any ad-hoc charges associated with the order. This will be used to generate the revenue of the order and will be taken directly from the ERP gross profit (XTNDPRCE – EXTDCOST).&lt;br /&gt;
*  Transport Units/Products being delivered. This process will also create TU types and product types where required. Unit weights and dims will be stored on product types and UOMs. These will be created when orders are created, then not updated from that point.&lt;br /&gt;
*  Customer - the customer and basic rate information will be defaulted in order to generate costs for trip. The customer will be identified through the CUSTNMBR and AddrCode fields in the view and will be automatically created if they do not already exist:&lt;br /&gt;
** If AddrCode is &amp;quot;0000&amp;quot;, then CUSTNMBR is the location AND the customer.&lt;br /&gt;
** If AddrCode is NOT &amp;quot;0000&amp;quot;, the CUSTNMBR is the Customer and AddrCode is the Location.&lt;br /&gt;
*  The sales territory (order group).&lt;br /&gt;
*  Parameters - consisting of:&lt;br /&gt;
**  Salesperson.&lt;br /&gt;
**  Loading location.&lt;br /&gt;
**  Order creation date.&lt;br /&gt;
**  Any other non-critical cross-reference data required for the order.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The operation has requested that lot numbers for certain order types be captured within the system for execution and reports. This is covered in more detail in the following [[#Lot Numbers|Lot Numbers]] section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The collection and delivery windows will be set based on the order type (service level).&lt;br /&gt;
&lt;br /&gt;
Most orders are day 1 for day 2 (i.e. customer deliveries INV and CAL).&lt;br /&gt;
&lt;br /&gt;
Some orders specify a delivery date and time outside of this region.&lt;br /&gt;
&lt;br /&gt;
Returns (COMP/RTN): the operation does not normally make a specific delivery run to collect a return, but instead plans them for when they are next visiting that location. This is usually within 3 days. The operation will manually plan these orders.&lt;br /&gt;
&lt;br /&gt;
All exceptions will be handled and planned manually.&lt;br /&gt;
&lt;br /&gt;
Stock Transfers (ISTIN) will be excluded from automatic scheduling and will be planned manually by the operation.&lt;br /&gt;
&lt;br /&gt;
Customer (desk) collections will be excluded from automatic scheduling and will be planned manually by the operation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will audit the success or failure of these order interfaces through the EDI Log screen, with a line for each order imported, a status (success or failure) and a showing the reason for any failure in detail. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Voided orders will be audited through the EDI log, in that the description of the process will clearly state that this order has been voided.&lt;br /&gt;
&lt;br /&gt;
Given that the interface is based on the creation date of the orders, if an order should fail, there will be no facility to get the order again. Therefore this auditing process must check the interface type that generated the message (in this case, then bespoke EBB orders interface) and allow for re-processing of the message. The interface should check for any messages marked to be reprocessed in the audit log and get the details of this order again in the next pass. The original audit record will be updated as reprocessed and a new audit record created for the new import. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Failed orders will ''not'' automatically re-import - it is up to the CTL administrators to look for failures and mark them to be reprocessed, as this may require modifications to be made to the order in the ERP or the static data in CTL to allow the order to be successfully processed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Orders Maintenance ===&lt;br /&gt;
All orders created in the system can be viewed and edited through the orders maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Orders1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Orders maintenance - list of orders}}&lt;br /&gt;
&lt;br /&gt;
Each order created will have the following information:&lt;br /&gt;
* References - the order references, expected to be the CTL order number, the external order number and the customer's reference. This also includes the order type (service level).&lt;br /&gt;
* Instructions - any order-specific instructions.&lt;br /&gt;
*  Locations - the origin and destination (from and to) locations.&lt;br /&gt;
*  Scheduling - the collection and delivery windows for the order.&lt;br /&gt;
*  Contacts - any contacts for the order.&lt;br /&gt;
*  Transport Units/Products being delivered.&lt;br /&gt;
*  Customer.&lt;br /&gt;
*  The sales territory (order group).&lt;br /&gt;
*  Parameters - consisting of:&lt;br /&gt;
**  Salesperson.&lt;br /&gt;
**  Loading location.&lt;br /&gt;
**  Order creation date.&lt;br /&gt;
**  Any other non-critical cross-reference data required for the order.&lt;br /&gt;
{{Note}} The revenue of orders created through the interface will be fixed and cannot be changed in this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Orders2.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Orders - status, references, type, instructions}}&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Orders3.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Orders - locations}}&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Orders4.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Orders - scheduling, requirements, transport units}}&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Orders5.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Orders - parameters, audit}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full audit trail is maintained of the creation and each change made to orders, either through the orders interface or manually by users in this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Lot Numbers ===&lt;br /&gt;
Lot numbering is a requirement of the operation.&lt;br /&gt;
&lt;br /&gt;
Call-off orders are typically large orders, pulled by pallet, where specific lots are identified. &lt;br /&gt;
&lt;br /&gt;
Typically these are full reels of a single product, with a unique lot number and weight within the ERP.&lt;br /&gt;
&lt;br /&gt;
The reels are palletised, one reel per pallet.&lt;br /&gt;
&lt;br /&gt;
The weight of each reel is roughly the same, but never identical.&lt;br /&gt;
&lt;br /&gt;
So, if an order calls off 11 tonnes, and the weight of each reel is roughly 1 tonne, the order will identify 11 pallets (lot numbers) with a weight as close to 11 tonnes as possible.&lt;br /&gt;
&lt;br /&gt;
The lots are identified on the order and on the pick note.&lt;br /&gt;
&lt;br /&gt;
The specific lot numbers are then picked and loaded for the order.&lt;br /&gt;
&lt;br /&gt;
Typically (but not always) this constitutes a full load.&lt;br /&gt;
&lt;br /&gt;
Because this information is not specifically displayed on the C-ePOD device, the driver could technically unload the incorrect lots.&lt;br /&gt;
&lt;br /&gt;
So the operation require that this information is displayed on the C-ePOD device and also potentially onto the POD document produced from C-ePOD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CTL and C-ePOD will be modified to support this process. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Lot number processing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} A view will be required within the ERP accessible by the CTL interface to retrieve the lot numbers, regardless of whether or how CTL intend to store or process the data. This will be a separate view (not amending the main order view) to that this can be implemented separately if required.&lt;br /&gt;
&lt;br /&gt;
This view will contain:&lt;br /&gt;
* ORDER&lt;br /&gt;
* PRODUCT&lt;br /&gt;
* LOT&lt;br /&gt;
&lt;br /&gt;
When importing orders, the process will check for any lot numbers associated with the product. If any are found, these will be stored as separate items under the product (the order line).&lt;br /&gt;
&lt;br /&gt;
This information will be sent to C-ePOD as part of the interface. &lt;br /&gt;
&lt;br /&gt;
The interface will either:&lt;br /&gt;
# Concatenate these lot numbers into a single field against the order or;&lt;br /&gt;
# Send these through as individual items to be found and delivered.&lt;br /&gt;
&lt;br /&gt;
This will affect the delivery process for the drivers in different ways:&lt;br /&gt;
# If concatenated, the information will be displayed against the product being delivered. So, if the product was 247.01 and the lots called off were LOT1, LOT2 and LOT3, there would be 1 product line for 247.01 with an additional text field of &amp;quot;LOT1, LOT2, LOT3&amp;quot; displayed against it.&lt;br /&gt;
# If sent through as individual pallets, these will be listed as individual containers on the list, showing the lot number, product code and weight. Each item will need to be confirmed separately. So, if the product was 247.01 and the lots called off were LOT1, LOT2 and LOT3, there would be no product lines but there would be 3 containers: 247.01-LOT1, 247.01-LOT3 and 247.01-LOT3, each showing the actual weight of the lots for that product.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each process would require some development, specifically:&lt;br /&gt;
* Both:&lt;br /&gt;
** Order interface to retrieve and store lot numbers.&lt;br /&gt;
** POD format change.&lt;br /&gt;
** EPOD Products List layout change.&lt;br /&gt;
* Concatenation:&lt;br /&gt;
** Identify a field on EPOD to store concatenated lot numbers&lt;br /&gt;
* Lot as separate items:&lt;br /&gt;
** Modify the length of the product + lot number, to ensure it can be stored.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each process has pros and cons:&lt;br /&gt;
* Concatenation:&lt;br /&gt;
** The driver process would not change in EPOD - they would still be prompted only for a single concatenated line. &lt;br /&gt;
** The drivers would manually check the lot numbers - the device cannot enforce this.&lt;br /&gt;
** The summary of products delivered (at customer signature) would not display the lot number without further development.&lt;br /&gt;
* Lot as separate items:&lt;br /&gt;
** Lots are immediately visible in CTL and EPOD without looking for the additional field.&lt;br /&gt;
** Specific lots can be marked as delivered or not.&lt;br /&gt;
** Driver will have to identify multiple items to unload - one for each lot.&lt;br /&gt;
&lt;br /&gt;
EBB will confirm the process they want to follow as part of the review and sign-off of this solution design.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Planning ==&lt;br /&gt;
=== Automatic Route Scheduling ===&lt;br /&gt;
As shown in the [[#Cross-dock routes|Cross-dock routes]] section above, CTL will replicate the existing fixed route configuration with respect to:&lt;br /&gt;
* The trunk network.&lt;br /&gt;
* Delivery zones and areas.&lt;br /&gt;
The intention is that CTL will use these created templates and zones to automatically plan each new order onto trips for that day through a scheduling engine process running at a timed interval.&lt;br /&gt;
&lt;br /&gt;
Fixed routes related to the trunk network will be identified with a Trunk flag.&lt;br /&gt;
&lt;br /&gt;
Any orders that do not match or are outside the normal schedule, break vehicle capacities, etc) will remain unscheduled and can then be investigated.&lt;br /&gt;
This should allow the operation to work much more pro-actively, with the system doing all of the original planning to the template, and then the users investigating just the exceptions, finessing the delivery plans, etc. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The automated scheduling process will check the attributes of the order being scheduled against the fixed route template, checking:&lt;br /&gt;
* volume capacity, estimated through the quantity of each TU type and the base unit equivalent (BUE) value.&lt;br /&gt;
* trailer weight capacity.&lt;br /&gt;
* cut-off time.&lt;br /&gt;
* from location (the depot from which the product is picked).&lt;br /&gt;
* end location compared to the zones on the fixed route template.&lt;br /&gt;
* delivery window, in that the order must be delivered within the end window of the order.&lt;br /&gt;
&lt;br /&gt;
The collection and delivery windows will be set in the interface based on the order type (service level).&lt;br /&gt;
&lt;br /&gt;
Most orders are day 1 for day 2 (i.e. customer deliveries INV and CAL).&lt;br /&gt;
&lt;br /&gt;
Some orders specify a delivery date and time outside of this region.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a trip is not found that matches the criteria of the fixed route template, one will be created. If the route templates indicates that this is a trunk trip, the trip created will be stamped with a flag indicating this. All trips created from fixed route templates will be automatically named from the fixed route template description. In this way, trips created from routes and trunk trips can be quickly identified in the system.&lt;br /&gt;
&lt;br /&gt;
If one is found, the order will be added to that trip and the order will be considered to be planned up to the destination of the template.&lt;br /&gt;
&lt;br /&gt;
This process will repeat, finding and scheduling the order onto trips generated by fixed routes until the order has reached its destination.&lt;br /&gt;
&lt;br /&gt;
If at any stage the order cannot be planned in full from the origin location to the destination within the delivery window, the order will be completely unplanned. This allows the users to manually plan the order, choosing whether to employ a third party from the origin point or whether to push the order to the closest depot before manually planning. {{Warning}} The process could instead retain all planning up to the last point, and then allow the users to manually plan (potentially through a 3rd party) from the last depot it reached, if that is preferable.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The trailer type used will be configured to take into account the tare weight of the trailer itself, to ensure that the load does not exceed weight capacity.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is requested that the process used to plan the orders within CTL plans only certain order types (service levels). Essentially, only customer-related delivery orders will be planned onto trips. Returns and stock transfers will then be manually planned. In terms of order types, that is:&lt;br /&gt;
* INV&lt;br /&gt;
* CAL&lt;br /&gt;
&lt;br /&gt;
The process will check the service levels (order types) to determine whether the order should be excluded from automatic planning.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Returns (COMP/RTN): the operation does not normally make a specific delivery run to collect a return, but instead plans them for when they are next visiting that location. This is usually within 3 days. The operation will manually plan these orders.&lt;br /&gt;
&lt;br /&gt;
Stock Transfers (ISTIN) will be excluded from automatic scheduling and will be planned manually by the operation.&lt;br /&gt;
&lt;br /&gt;
Customer (desk) collections will be excluded from automatic scheduling and will be planned manually by the operation.&lt;br /&gt;
&lt;br /&gt;
All exceptions will be handled and planned manually as shown below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Manual Planning ===&lt;br /&gt;
All trips automatically or manually planned can be viewed and amended through the CTL planning screen.&lt;br /&gt;
&lt;br /&gt;
When creating manual trips, the screen shows a view of all orders in the order well. This list can be restricted to the orders that are being planned (i.e. unscheduled orders) and filtered.&lt;br /&gt;
&lt;br /&gt;
The screen allows:&lt;br /&gt;
* Creating new trips.&lt;br /&gt;
* Filtering trips by status, trunks, carriers, depots, dates, schedules, trunk trip, etc.&lt;br /&gt;
* Filtering orders by status, schedule, ownership (by region), customer, etc.&lt;br /&gt;
* Amending trips.&lt;br /&gt;
* Resourcing - discussed in more detail in the following [[#Resource Assignment|Resource Assignment]] section.&lt;br /&gt;
* Viewing on a map - discussed in more detail in the following [[#Optimisation|Optimisation]] section.&lt;br /&gt;
* Optimisation - discussed in more detail in the following [[#Optimisation|Optimisation]] section.&lt;br /&gt;
&lt;br /&gt;
The carrier you are planning for is shown in the header, and all trips shown will be restricted to that carrier. The trips can also be further filtered.&lt;br /&gt;
&lt;br /&gt;
Multiple orders can be selected and new trips can be created, either to the destination or through a cross-dock location, using the buttons provided.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Planning1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Planning Order Well}}&lt;br /&gt;
&lt;br /&gt;
Existing trips can have orders manually added to them by selecting the orders and dragging them to the trip in the trip panel.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Planning2.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Planning onto existing trips}}&lt;br /&gt;
&lt;br /&gt;
Each trip can be viewed in more detail through the full-screen view. Each stop can be expanded to show the orders on that stop, along with more stop and order information.&lt;br /&gt;
&lt;br /&gt;
Each trip and stop shows warnings regarding potential planning issues.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Planning3.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Full-screen with expanded details and warnings}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The current planning process uses the gross profit to determine the viability of any single trip, so planning must show order revenue and trip cost. This is applicable only to final radial trips.&lt;br /&gt;
&lt;br /&gt;
The order revenue calculated in GP will be picked up as part of the order interface. This will then generate the order revenue - it need not be calculated in CTL.&lt;br /&gt;
&lt;br /&gt;
The screen will be modified to include trip cost and total order revenue on the trip summary.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Planning screen to display trip cost and revenue in summary.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The screen will also indicate whether this is a trunk trip on the full screen view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Desk collections can order product from one depot e.g. (Thurrock) to be collected at another (e.g. Farnborough).&lt;br /&gt;
&lt;br /&gt;
The order must be trunked to that location.&lt;br /&gt;
&lt;br /&gt;
Typically collection is at the depot closest to the customer, but could be at any location.&lt;br /&gt;
&lt;br /&gt;
EBB will manually trunk and create collection trips for customer collections.&lt;br /&gt;
&lt;br /&gt;
In order to facilitate that, the users will filter orders by service level on the planning screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Optimisation ===&lt;br /&gt;
Trunk trips will naturally be optimised as they are very proscriptive with limited stops and fixed times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Regarding radial trips, although the fixed route templates will get all of the orders on the trunk and final radial trips as required, the sequence of the orders on the trip will not be fully optimised. &lt;br /&gt;
&lt;br /&gt;
The planning screen will allow the user to see all of the orders on a trip on a map, so that they can see inefficiencies and change them manually. MT confirmed that this cannot be changed on the map - this map is used for information, which the user then replicates on the trip by changing the stop sequence.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_PlanningMap.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Planning map view}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is trip optimisation option built into the planning screen, utilising HERE maps optimisation. &lt;br /&gt;
&lt;br /&gt;
This has been agreed that this is part of the solution that will be built for EBB and that the costs of the HERE maps optimisation are included.&lt;br /&gt;
&lt;br /&gt;
The user can use the icons under a trip to automatically optimise the sequence of orders on this trip.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_PlanningOptimise.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Optimisation}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The HERE maps optimisation supports:&lt;br /&gt;
* Fixed start times.&lt;br /&gt;
* Fixed start and end locations.&lt;br /&gt;
* A single location time window.&lt;br /&gt;
* Fixed sequencing (i.e. order B before order A).&lt;br /&gt;
&lt;br /&gt;
{{Note}} Optimisation will use these order/customer windows to automatically determine the most efficient run sequence.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resource Assignment ==&lt;br /&gt;
Once trips are created and optimised, the users will assign resource to the trips.&lt;br /&gt;
&lt;br /&gt;
The current implementation of C-ePOD is enabled for trailer identification, but that it appears not be used at this time. The operation requires that this is used after the implementation of CTL.&lt;br /&gt;
&lt;br /&gt;
Trips are created with carriers assigned to them. The carrier defines the available resources (driver, vehicle, trailer).&lt;br /&gt;
&lt;br /&gt;
The planning screen allows the users to assign resource to trips.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_ResourcingDrivers.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Resourcing Drivers}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=150px heights=250px perrow=2&amp;gt;&lt;br /&gt;
Image:REQ_366558_ResourcingVehicles.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Resourcing Vehicles}}&lt;br /&gt;
Image:REQ_366558_ResourcingTrailers.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Resourcing Trailers}}&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Users can select the resource type and then drag and drop the selected resource onto the trips. Depending on the trip being resourced, the resources will be displayed with annotations to indicate any limitations with this resource on this trip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
EBB noted that certain locations have restrictions as to what trailer/vehicle type may visit that location (for final radial runs of deliveries and collections).&lt;br /&gt;
OBS noted that CTL contains the facility to restrict vehicle types or specific vehicles from visiting the location.&lt;br /&gt;
&lt;br /&gt;
Furthermore, drivers themselves can be excluded from delivering for certain customers or locations.&lt;br /&gt;
&lt;br /&gt;
This users enter this information as part of the configuration of the resources (driver, vehicle and trailer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This information is used when resourcing created trips, by providing decision assistance to the user, indicating why the specific resource (vehicle or driver in this case) may or may not be suitable for this trip, in the form of warnings or information icons and pop-ups against the resource or trip. This will show:&lt;br /&gt;
* Driver exclusions.&lt;br /&gt;
* Driver availability (diary).&lt;br /&gt;
* Driver working hours/shift.&lt;br /&gt;
* Vehicle/trailer exclusions.&lt;br /&gt;
* Vehicle/trailer availability (diary or VOR).&lt;br /&gt;
* Resource already allocated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Trailer swaps - how to plan them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Execution ==&lt;br /&gt;
Once a trip has been successfully resourced, the users may then export the trip to C-ePOD for execution using the provided button on the trip. The trip will be automatically set to ACCEPTED status.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_SendToEPOD.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Send trips to EPOD.}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} The users may still modify trips after this point, and the trip can be sent to C-ePOD again after modification are complete.&lt;br /&gt;
&lt;br /&gt;
{{Note}} This process could equally be completed after loading is completed.&lt;br /&gt;
&lt;br /&gt;
The interface to C-ePOD will require some change from the standard model to support the requirements of the existing EBB Paper implementation of C-ePOD. The following changes are required:&lt;br /&gt;
* Map new/changed elements (i.e. Sales territory, Salesperson, loading location, order creation date, etc). Ensure that this is configurable.&lt;br /&gt;
* The configuration of job group will be required to be set by stop activity (SU, PK, DL, CL).&lt;br /&gt;
* Job consolidation is required at a loading and unloading stop level at a depot only.&lt;br /&gt;
* Depot loading and unloading will be identified as loading or unloading jobs in the interface (as opposed to normal collections and deliveries).&lt;br /&gt;
* Trailer identification.&lt;br /&gt;
* Importing of any bespoke functionality into the standard C-ePOD webservice interface, such as (but not limited to):&lt;br /&gt;
** Creating UOMs.&lt;br /&gt;
** Creating drivers.&lt;br /&gt;
** Creating trailers.&lt;br /&gt;
** Multiplying product quantities.&lt;br /&gt;
{{Note}} If lot number functionality is to be developed, this interface must also include the specific lot numbers. This is included as part of the lot number change raised earlier.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=CTL-EPOD Interface changes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} The use of location has changed slightly, as identified in the order import process:&lt;br /&gt;
** EPOD currently does not use the AddrNo field at all.&lt;br /&gt;
** Location will now be the AddrNo in the case where it is a non-0000 value.&lt;br /&gt;
** This drives a change to what is sent to EPOD, in that the location may differ.&lt;br /&gt;
&lt;br /&gt;
This will be reflected in the interface and in the set-up of the C-ePOD system. This is not expected to drive any meaningful change into the process, but more properly defines the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operation will then need to load the product and print out driver manifests and delivery notes for the trips. The system will include the following operational reports:&lt;br /&gt;
* Loading sheet.&lt;br /&gt;
* Driver Manifest.&lt;br /&gt;
* Delivery Notes.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} It is to be confirmed whether OBSL should develop this format within CTL or whether EBB will conform to the generic CTL format. If required, this will be an additional development, described below. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=EBB operational reports.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- If completed this way, The driver manifest and delivery notes will be produced as a single report from a trip. This will be based on the existing formats provided by the customer. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Loading ===&lt;br /&gt;
The operation will load the vehicles based on the trips created. CTL will produce a loading sheet to control the loading and unloading of the vehicles.&lt;br /&gt;
&lt;br /&gt;
This will display the stops on the trip, and display a list of the orders and product (lines) and quantity to be loaded. {{Note}} If lot number functionality is to be developed, this report must also include the specific lot numbers to be loaded. This is included as part of the lot number change raised earlier.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To aid in the issues in the current system where late orders sometimes result in duplicate picking or loading twice, the loading report will be modified to help control this.&lt;br /&gt;
&lt;br /&gt;
A mechanism will be introduced in this report whereby a unique ID will be stamped against the reported orders showing when they were added to the Loading report. This then will immediately identify to the users that these orders are additional to any previously-produced sheet and are awaiting loading, whereas any that have the previous ID were produced on an earlier report and therefore may already be loaded.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Operational report (loading sheet or driver manifest) to include run sequence.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Voided orders may have been removed from trips or may still be assigned to the trips. When producing the documentation (driver manifest, delivery notes and/or loading/unloading sheets), the documents will clearly indicate any cancelled orders. When the orders are removed from the trips by the operation, the orders will no longer show on the operational documents for those trips and therefore the operation will need to take great care in ensuring that cancelled orders that have been removed from trips have their operational documents reproduced.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is noted that voiding orders is subject to operational checks between the salesperson and the operation (warehouse and depot) before orders are voided. If this check is performed, it is highly unlikely that the operation will have issues with voided orders. This manual check must remain, however.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning}} MT queried the need for an unloading sheet in the operation, as other operations just use the driver manifests and delivery notes to achieve this. To be confirmed with EBB whether they use the driver manifest for loading/unloading trunks and loading final deliveries.&lt;br /&gt;
&lt;br /&gt;
QUESTION: What about the orders that are added to the trip after the trip departs the first depot? So, all orders planned, picked and loaded at Thurrock. Truck departs Thurrock to go to Hemel. Orders are still being picked and readied for loading onto this trip up until around 2000. The driver's manifest will not include any of these orders.&lt;br /&gt;
&lt;br /&gt;
{{Note}} This decision will affect which reports are run by the operation (loading/unloading or driver manifest), but the work to amend either report to include a run sequence will remain the same.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Vehicle Departure ===&lt;br /&gt;
Once the loading of a trip is complete (and the trip is resourced and sent to C-ePOD), the trips can be executed through C-ePOD.&lt;br /&gt;
&lt;br /&gt;
When a trip is started on the C-ePOD device, the trip will be set to EN-ROUTE status within CTL automatically.&lt;br /&gt;
&lt;br /&gt;
{{Note}} EN-ROUTE trips will still be accessible through the CTL planning screen and may still be amended. The planning screen does not, however, display any actual stop times or order quantities that may have been derived through execution through C-ePOD - this information can be seen through the debrief screen discussed in the [[#Trip and Order Debrief|Trip and Order Debrief]] section below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operation already uses C-ePOD to execute trips for delivery, return collection and customer collection (desk) jobs.&lt;br /&gt;
&lt;br /&gt;
As already mentioned, trunk trips were currently not operated through EPOD. &lt;br /&gt;
&lt;br /&gt;
The following types of trip will now be executed through C-ePOD:&lt;br /&gt;
* Trunk trips.&lt;br /&gt;
* Final radial delivery/return trips.&lt;br /&gt;
* Customer collections at the depot (warehouse/desk jobs).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Delivery/Collection ===&lt;br /&gt;
The operation already uses C-ePOD to execute delivery/collections loads. &lt;br /&gt;
&lt;br /&gt;
The process is as described in the C-ePOD requirements document, referenced in [[#Appendix B: Document References|Appendix B]] below.&lt;br /&gt;
&lt;br /&gt;
This is summarised in this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Retrieving the load ====&lt;br /&gt;
The driver will log on to the device with a user name, password and vehicle.&lt;br /&gt;
&lt;br /&gt;
The device will download the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (and/or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Starting jobs ====&lt;br /&gt;
The driver will select '''Start Job''' from the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
Delivery instructions are displayed.&lt;br /&gt;
&lt;br /&gt;
The driver may do the jobs in any sequence - the device will warn the user if the jobs are attempted out of sequence.&lt;br /&gt;
&lt;br /&gt;
Once started, the device displays a navigation button. Clicking this will start navigation through the installed navigation app. For TomTom devices, this will be the TomTom NavApp. For non-TomTom devices, the application will show whatever app is installed on the device to handle navigation, or the Google Maps website if there is none. The app will immediately calculate a route to the destination address.&lt;br /&gt;
&lt;br /&gt;
Once arrived at the destination, the driver switches to the ''CALIDUS'' ePOD mobile application. &lt;br /&gt;
&lt;br /&gt;
The driver indicates arrival and starts processing the job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
The device moves on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Delivery process ====&lt;br /&gt;
The driver confirms delivery of the product and quantities for the order.&lt;br /&gt;
&lt;br /&gt;
The driver can confirm each product on the list as delivered, change the quantity delivered or cancel the delivery of that product.&lt;br /&gt;
&lt;br /&gt;
The driver has the option of clicking '''Deliver All''' on the ''Job Details'' tab to confirm all product on that job as delivered.&lt;br /&gt;
&lt;br /&gt;
When all products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Potential modifications to process to support Lot Numbers. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Returns (collection) process ====&lt;br /&gt;
The collection process is almost identical to that described above, substituting Collection instead of Delivery.&lt;br /&gt;
&lt;br /&gt;
When all products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Job completion process ====&lt;br /&gt;
The device displays:&lt;br /&gt;
* The Terms and Conditions.&lt;br /&gt;
* The Products delivered/collected.&lt;br /&gt;
&lt;br /&gt;
The driver is expected to obtain:&lt;br /&gt;
* the customer name.&lt;br /&gt;
* the customer Signature.&lt;br /&gt;
&lt;br /&gt;
The driver has an option of ''Unmanned location'' for unmanned locations or delivery out of hours. This process will instead require:&lt;br /&gt;
* the driver signature (PP customer).&lt;br /&gt;
* photos to confirm delivery.&lt;br /&gt;
&lt;br /&gt;
When the delivery or collection job is complete, the job is removed from the list. The driver continues the same process for all jobs on the load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Collection from Depot (Desk Collection) ===&lt;br /&gt;
The operation already uses C-ePOD to execute desk collections loads. &lt;br /&gt;
&lt;br /&gt;
The process is as described in the C-ePOD requirements document, referenced in [[#Appendix B: Document References|Appendix B]] below.&lt;br /&gt;
&lt;br /&gt;
This is summarised in this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The above process of working through jobs from a Job List, selecting them and following the delivery process will be as per the above process.&lt;br /&gt;
&lt;br /&gt;
The Load for the depot operatives is created one per depot per day, so all collections from the depot will be visible on that load.&lt;br /&gt;
&lt;br /&gt;
The device shows all jobs as delivery jobs with the destination address and contact information provided. The desk operative requests the information from the customer (reference, post code, etc) and select the job (or consolidated jobs, if there are many to be collected) from the job list.&lt;br /&gt;
&lt;br /&gt;
The depot operative starts the job and immediately clicks ''Arrive'' - no navigation is required.&lt;br /&gt;
&lt;br /&gt;
The depot operative checks the goods and 'delivers' the goods as the driver would. '''Deliver All''' functionality is available.&lt;br /&gt;
&lt;br /&gt;
The device prompts for the customer signature - no unmanned location process is available.&lt;br /&gt;
&lt;br /&gt;
When the desk collection is complete, the job is removed from the list, as normal.&lt;br /&gt;
&lt;br /&gt;
All collections for the day remain on this load unless they are moved to another day. If any jobs remain on this load at the end of the day, the load is cancelled or deassigned from the &amp;quot;WAREHOUSE&amp;quot; user.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
EBB identified that there is an existing issue with customer collections. &lt;br /&gt;
&lt;br /&gt;
It is noted that this is an understood limitation of the system, and is caused by customers not collecting on the day advised.&lt;br /&gt;
&lt;br /&gt;
The users then must move the job onto a load on the following day and close the original load to continue.&lt;br /&gt;
&lt;br /&gt;
CTL will build trips in the same way as EPOD currently does so, without additional work, this problem will persist.&lt;br /&gt;
&lt;br /&gt;
As part of the solution design, OBS will investigate the possibility of CTL applying customer collection jobs to a specific trip that remains open for a long time (for example a month or a year, rather than a day). C-ePOD then must be modified to leave the trip open rather than close it when all orders are collected.&lt;br /&gt;
&lt;br /&gt;
This is likely to be substantial additional work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Keep desk loads open for longer periods.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trunk Trips ===&lt;br /&gt;
EBB Paper desire to start using EPOD for trunk trip execution.&lt;br /&gt;
&lt;br /&gt;
Based on the current known requirements, there are no modification required to the systems to help process trunk movements through CTL and C-ePOD. &lt;br /&gt;
&lt;br /&gt;
It is expected that the trunk trips will be operated through C-ePOD in a similar way as radial deliveries. This is as described in the C-ePOD requirements document, referenced in [[#Appendix B: Document References|Appendix B]] below and summarised above.&lt;br /&gt;
&lt;br /&gt;
The device will be configured with 'Deliver All' functionality, so that the driver would not have to scan each product on or off the vehicle.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During the start-up meeting, it was mentioned that entering the product quantities could be desirable at certain depots, due to inaccuracies when unloading. It should be noted that it is the driver that would be responsible for the unloading and product quantity entry and therefore this may not be suitable.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system could be configured to run these jobs and that the configuration could be made specific to these jobs. EBB are to decide upon the exact configuration required for the trunk job execution.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process within C-ePOD for trunk loads will be as follows:&lt;br /&gt;
&lt;br /&gt;
The driver will log on to the device with a user name, password and vehicle.&lt;br /&gt;
&lt;br /&gt;
The device will download the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (and/or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again.&lt;br /&gt;
&lt;br /&gt;
The list will contain only a single entry per loading or unloading at the depots, no matter how many jobs there are on the load. So, if this were the Sheffield - Birmingham trunker:&lt;br /&gt;
* 1 loading entry at Sheffield planned for 1800.&lt;br /&gt;
* 1 unloading entry at Birmingham planned for 2030.&lt;br /&gt;
* 1 loading entry at Birmingham planned for 2130.&lt;br /&gt;
* 1 unloading entry at Sheffield planned for 2330.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=200px heights=320px perrow=3&amp;gt;&lt;br /&gt;
Image:REQ_366558_Job_List_Trunk.png|{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Job List showing consolidated trunk jobs}}&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The driver will start, navigate and arrive the jobs in the same way as normal collections and deliveries. The driver will also be able to view the order level details of all orders to be loaded at that location, using buttons on the header to view each order. All instructions for all orders at that location will be displayed to the driver.&lt;br /&gt;
&lt;br /&gt;
At this point, the device will display all products for all orders. The driver will have a single button to confirm that the jobs are loaded, through a '''Collect All''' button. Note that the unloading or loading of products for a trip/vehicle is expected to be handled through the operational documents either carried by the driver or produced at the depot.&lt;br /&gt;
&lt;br /&gt;
When the user has confirmed all products are collected (loaded) for that location, the device will then require a signature as normal.&lt;br /&gt;
&lt;br /&gt;
When the loading job is complete, the job is removed from the list. The driver continues the same process unloading at the next depot, and any other jobs on the load in sequence. In the case of unloading jobs, the driver will have a '''Deliver All'''' button rather than a '''Collect All''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Trip and Order Debrief ==&lt;br /&gt;
Debrief consists of several elements:&lt;br /&gt;
*	Trip debrief, confirming trip, driver and resource information captured.&lt;br /&gt;
*	Stop-level debrief, typically confirming the actual arrival and departure times&lt;br /&gt;
*	Order-level debrief, typically confirming the quantities of products collected, despatched and delivered.&lt;br /&gt;
&lt;br /&gt;
CTL allows all of these elements to be debriefed, largely automatically from use of C-ePOD execution.&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Debrief1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Debrief Trip level}}&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Debrief1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Debrief Stop and Order level}}&lt;br /&gt;
&lt;br /&gt;
[[File:REQ_366558_Debrief1.png|border|600px]]&lt;br /&gt;
{{Xref|Type=Figure|Num={{ #vardefineecho: Figure| {{ #expr: {{ #var: Figure}} + 1 }} }}|Text=Debrief Order Line level}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C-ePOD provides GPS tracking and an interface of actual arrival and departure dates and times into CTL-TMS to enable planned versus actual schedule adherence to be measured.  This data is captured automatically, near real time.&lt;br /&gt;
&lt;br /&gt;
The C-ePOD system is responsible for the trip/stop-level debrief information (i.e. the On Time aspect of OTIF, the arrival and departure times against stops on a trip). This information is stored within CTL-TMS for reporting purposes. &lt;br /&gt;
&lt;br /&gt;
This update for trunk trips will update the arrival and departure times against each stop on a trip.&lt;br /&gt;
&lt;br /&gt;
For final mile delivery trips executed using the C-ePOD application by the driver, this will update order quantities in CTL-TMS and therefore will set the delivered quantities against the orders and complete the order and the trip, changing the statuses accordingly.&lt;br /&gt;
&lt;br /&gt;
Any modifications to delivered quantity or the product delivered are captured with a clause code in C-ePOD. This information is included in the debrief and reflected in CTL-TMS as part of the reason codes against each line. Note that this is also true of individual items (which may be used for lot number processing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Most orders will be executed through C-ePOD as described above. In this case, the CTL-TMS debrief screen will provide a view of the information captured from the C-ePOD system.&lt;br /&gt;
&lt;br /&gt;
However, in some instances, the operation may wish to manually debrief orders, for example orders through 3rd party carriers.&lt;br /&gt;
&lt;br /&gt;
CTL-TMS provides a debrief screen that can be used to review the automatic debrief updates from the mobile execution systems and to update and finalise the driver, trip and order debrief (i.e. the In Full aspect of OTIF).&lt;br /&gt;
&lt;br /&gt;
The order debrief allows the quantity of despatched and delivered units to be confirmed for each order line.&lt;br /&gt;
&lt;br /&gt;
The trip stop times enables actual times to be reviewed and input against planned times. This is expected to be automatically populated by C-ePOD.&lt;br /&gt;
&lt;br /&gt;
Any discrepancy of actual quantity input for an order will prompt the user to enter a reason code from a list and narrative can be added.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen also allows each individual tracked item to be debriefed for despatch and delivered quantity. This may be used for Lot traceability.&lt;br /&gt;
&lt;br /&gt;
Start and End ODO readings are entered against a trip at debrief. These may be viewed and entered in the manual debrief screen.&lt;br /&gt;
These ODO readings will be stored in KM as a base unit.&lt;br /&gt;
&lt;br /&gt;
Fuel drawn by the engine may also entered against a trip at debrief. This may be viewed or entered in the manual debrief screen.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
Once the debrief entry is done, the status of the trip can be updated and promoted to COMPLETED using the provided button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
The operation already utilises ''CALIDUS'' Portal TTM for track and trace of trips and orders.&lt;br /&gt;
&lt;br /&gt;
The process will not be affected by the addition of CTL as a transport management system, as C-ePOD will continue to be the source of all TTM-related information.&lt;br /&gt;
&lt;br /&gt;
The system is described in the C-ePOD requirements document, referenced in [[#Appendix B: Document References|Appendix B]] below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Reporting ==&lt;br /&gt;
Currently, C-ePOD generates the POD/POC documentation for each job completed. This will continue.&lt;br /&gt;
&lt;br /&gt;
As part of the optional Lot Number change, this report format may require modification.&lt;br /&gt;
&lt;br /&gt;
Regardless, there are changes required to the C-ePOD report to reflect new configuration in C-ePOD user-defined fields - this has been agreed to be completed as part of this project.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Modify POD/POC report to include new UDF fields.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Currently, the operation utilises some extract from the Portal TTM system to provide information on the completed orders. The operation has recently raised concerns that these reports do not provide all of the information that is required, namely the reason codes for product quantity amendment or cancellation.&lt;br /&gt;
&lt;br /&gt;
These reports will be superseded by data extracts within CTL. It is not required that the existing TTM reports be modified to provide this additional functionality before the implementation of CTL.&lt;br /&gt;
&lt;br /&gt;
Further to that, the TRIP_ORDER and ORDER extracts be extended to report data to a reason code level.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Extracts to report reason codes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The levels will be amended to:&lt;br /&gt;
* TRIP_ORDER extract: TRIP/ORDER/LINE/ITEM/ITEM_REASONS&lt;br /&gt;
* ORDER extract: ORDER/LINE/ITEM/ITEM_REASONS&lt;br /&gt;
&lt;br /&gt;
It is acceptable to the operation to have these extracts run by repeating lines dependent on the number of child records.&lt;br /&gt;
&lt;br /&gt;
So for example, with a trip with 5 orders, each with 5 products to deliver:&lt;br /&gt;
* Reporting at TRIP level will show the 1 line with the trip-related fields.&lt;br /&gt;
* Reporting at ORDER level will show 5 lines with the trip-related fields repeated and the order-related fields.&lt;br /&gt;
* Reporting at LINE level will show 5 lines with the trip-related fields repeated and the order- and order line-related fields (assuming only one order line). This level is not expected to be something that EBB will use.&lt;br /&gt;
* Reporting at ITEM level will show 25 lines with the trip-, order- and order line-related fields repeated and the item-related fields.&lt;br /&gt;
* Reporting at ITEM_REASONS level will show 25 lines with the trip-, order- and order line-related fields repeated and the item- and reason-related fields (reason populated if present).&lt;br /&gt;
&lt;br /&gt;
When extracted, the data in this form will be easy to pivot in Excel.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL&lt;br /&gt;
|Area=Resource Planning&lt;br /&gt;
|Description=Full resource calendar.&lt;br /&gt;
|Estimate=8&lt;br /&gt;
|Notes=2&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL&lt;br /&gt;
|Area=Integration&lt;br /&gt;
|Description=Bespoke import interface.&lt;br /&gt;
|Estimate=32&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL/EPOD&lt;br /&gt;
|Area=Various&lt;br /&gt;
|Description=Lot number processing.&lt;br /&gt;
|Estimate=32&lt;br /&gt;
|Notes=2&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL&lt;br /&gt;
|Area=Interface&lt;br /&gt;
|Description=CTL-EPOD Interface changes.&lt;br /&gt;
|Estimate=16&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL&lt;br /&gt;
|Area=Reports&lt;br /&gt;
|Description=EBB operational reports.&lt;br /&gt;
|Estimate=8&lt;br /&gt;
|Notes=2&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL&lt;br /&gt;
|Area=Reports&lt;br /&gt;
|Description=Operational report (loading sheet or driver manifest) to include run sequence.&lt;br /&gt;
|Estimate=3.5&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL/EPOD&lt;br /&gt;
|Area=Interface&lt;br /&gt;
|Description=Keep desk loads open for longer periods.&lt;br /&gt;
|Estimate=11.5&lt;br /&gt;
|Notes=2&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=EPOD&lt;br /&gt;
|Area=Reports&lt;br /&gt;
|Description=Modify POD/POC report to include new UDF fields.&lt;br /&gt;
|Estimate=1.5&lt;br /&gt;
|Notes=4&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|System=CTL&lt;br /&gt;
|Area=Extracts&lt;br /&gt;
|Description=Extracts to report reason codes.&lt;br /&gt;
|Estimate=3.5&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Optional additional development.&lt;br /&gt;
#Estimates are total number of days, and include specification and unit testing. They do not include project management, system testing, release or implementation costs.&lt;br /&gt;
#Free of charge - listed here for completeness.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=CTLTMS&lt;br /&gt;
|Ref1=[[REQ 343463 EBB Paper Solution Design]]&lt;br /&gt;
|RefV1=2.0&lt;br /&gt;
|RefDate1=01/08/2017&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Paul Griffiths&lt;br /&gt;
|Rev1Title=EBB Paper Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBS Logistics Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;br /&gt;
[[Category:{{#var:SystemCode}}]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344274_SCR-343463-04_EBB_Paper_POD_POC_Format&amp;diff=4893</id>
		<title>FS 344274 SCR-343463-04 EBB Paper POD POC Format</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344274_SCR-343463-04_EBB_Paper_POD_POC_Format&amp;diff=4893"/>
		<updated>2017-08-10T11:18:01Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Review and Issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|EBB}}&lt;br /&gt;
{{#vardefine:ClientName|EBB Paper}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|EBB Paper POD/POC Format}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|10th August 2017}}&lt;br /&gt;
{{#vardefine:Reference|344274 SCR-343463-04}}&lt;br /&gt;
{{#vardefine:Year|2017}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
SCR-343463-04: EBB Paper POD/POC Format &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once jobs are completed, then will be confirmed with the C-ePOD server. After this confirmation, a POD/POC report may be produced.&lt;br /&gt;
&lt;br /&gt;
All photos taken by the driver during the execution of the job (i.e. at cancellation of product, change quantity of product, job photos) will be displayed in the C-ePOD Admin system for the administrative users to view. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The format attached to the job group is the format that will be produced from the Admin console and displayed for customers when requested through ''CALIDUS'' Portal.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
The format of the POD note has been prototyped to show capability. The format has been provided and the prototype is shown below: &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_343463_POD1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Prototype EBB Papers POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Page Header, expected to be displayed on every page:&lt;br /&gt;
* EBB Logo - It is expected that this will be the logo taken from the site.&lt;br /&gt;
* &amp;quot;ELLIOTT BAXTER &amp;amp; ...&amp;quot; - fixed text.&lt;br /&gt;
* &amp;quot;Delivery Note&amp;quot; - fixed text, displaying &amp;quot;Collection Note&amp;quot; if the job is a collection.&lt;br /&gt;
* Mr EBB Logo - Fixed image in the format&lt;br /&gt;
* Invoice to - The address of the job's customer.&lt;br /&gt;
* &amp;quot;Delivery to&amp;quot; -  fixed text, displaying &amp;quot;Collection from&amp;quot; if the job is a collection.&lt;br /&gt;
* Delivery to - the job address if present, otherwise the customer address.&lt;br /&gt;
* &amp;quot;Delivery Instructions&amp;quot; - any job instructions provided.&lt;br /&gt;
* DATE - {{Warning}} the planned start date&lt;br /&gt;
* BRANCH - the owner of the job&lt;br /&gt;
* DEL DATE - {{Warning}} the actual start date&lt;br /&gt;
* DELIVERY TIME - {{Warning}} the planned start time&lt;br /&gt;
* S TIME - the arrival time&lt;br /&gt;
* E TIME - the actual end time&lt;br /&gt;
* DEL NOTE NO - the INV number (Job Code)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Product Details, expected to be shown on every page, expected to show up to 10 products per page:&lt;br /&gt;
* ORDER NO - the order number against the product&lt;br /&gt;
* QTY - The actual quantity of the product delivered, as confirmed by the driver.&lt;br /&gt;
* UNITS - the unit type against the product&lt;br /&gt;
* QUALITY &amp;amp; DESCRIPTION - The description of the product, and the FSC number (if provided) from the Long Description.&lt;br /&gt;
* PACKS - the pack size, from the case quantity.&lt;br /&gt;
* KGS - the weight of the product&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Footer, expected to be shown on all pages:&lt;br /&gt;
* Please be sure to check every...&amp;quot; - T&amp;amp;Cs from the job.&lt;br /&gt;
* Total Wgt - the sum of the weights of the delivered products.&lt;br /&gt;
* &amp;quot;Signature&amp;quot; - the customer signature if present.&lt;br /&gt;
* Print Name - the customer signatory, if present.&lt;br /&gt;
* Date - the actual end date.&lt;br /&gt;
* &amp;quot;Signed on behalf of&amp;quot; - based on the Unmanned Location process. If the driver signature is present, it will be displayed here.&lt;br /&gt;
* Print Name - the driver's name.&lt;br /&gt;
* Date - the actual end date.&lt;br /&gt;
* &amp;quot;NUMBER 1 FOR SERVICE&amp;quot; - fixed logo.&lt;br /&gt;
* &amp;quot;Only products identified ...&amp;quot; - fixed text.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope ==&lt;br /&gt;
This change will be applied to system version 4.X.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of the exact fields used for this report are to be confirmed as part of this functional specification. These are dependent on the interface mapping. Specifically the data affected is:&lt;br /&gt;
* The Dates and Times displayed&lt;br /&gt;
* The Branch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
== Data ==&lt;br /&gt;
Each Job Group will be configured with the POD/POC format.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_344273_Admin_JobGroups1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Job Groups Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== Format &amp;quot;EBB Paper&amp;quot; ==&lt;br /&gt;
The report will be produced through the Configurable POD Report format (ConfigPOD.aspx).&lt;br /&gt;
&lt;br /&gt;
A data report (on EPOD_CONFIG_REPORT) will be created matching the prototype format created.&lt;br /&gt;
&lt;br /&gt;
The format created will have the name &amp;quot;EBB Paper&amp;quot; (in ECR_NAME) and will added to the list of POD/POC formats that can be selected from the Site and Job Group screens (being added to EPOD_LIST_ITEMS for the drop-down lists on these screens).&lt;br /&gt;
&lt;br /&gt;
Settings for the configurable report are stored on EPOD_CONFIG_REPORT and are as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
! Data Field !! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ECR_NAME  || &amp;quot;EBB Paper&amp;quot;   || The name of the report.&lt;br /&gt;
|-&lt;br /&gt;
| ECR_ROWS_FIRST_PAGE   || 10   || The number of detail rows on the first page of a multi-page report, including the title line.&lt;br /&gt;
|-&lt;br /&gt;
| ECR_MAX_ROWS_SINGLE_PAGE  || 10   || The number of detail rows on a single page report, including the title line.&lt;br /&gt;
|-&lt;br /&gt;
| ECR_ROWS_CONTENT_PAGE || 10   || The number of detail rows on a (non-first or last) page of a multi-page report.&lt;br /&gt;
|-&lt;br /&gt;
| ECR_ROWS_LAST_PAGE    || 10   || The number of detail rows on the last page of a multi-page report&lt;br /&gt;
|-&lt;br /&gt;
| ECR_ALT_ROWS_IND  || 0    || Whether odd and even detail rows are formatted differently (1) or not (0).&lt;br /&gt;
|-&lt;br /&gt;
| ECR_INC_CANCELLED_IND ||  0   || Whether to include cancelled details lines (containers or products) on the report (1) or not (0).&lt;br /&gt;
|-&lt;br /&gt;
| ECR_INC_IMAGES_IND    || 1    || Whether to include images on the viewed report (1) or not (0).&lt;br /&gt;
|-&lt;br /&gt;
| ECR_EMAIL_IMAGES_IND  || 0   || Whether to include images on the PDF report generated for emails (1) or not (0).&lt;br /&gt;
|-&lt;br /&gt;
| ECR_INC_PRODUCTS_IND  || 1    || Whether Products are included on the report (1) or not (0).&lt;br /&gt;
|-&lt;br /&gt;
| ECR_PDF_ORIENT    || P    || The orientation of the report: (P)ortrait or (L)andscape.&lt;br /&gt;
|-&lt;br /&gt;
| ECR_CONTENT_SORT || NULL || The fields on which to sort detail (product or container) records, delimited by commas.&lt;br /&gt;
|-&lt;br /&gt;
| ECR_CONTENT_GROUP || NULL || The fields on which to group detail (product or container) records, delimited by commas.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The format is populated as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Page Header will be defined in ECR_PAGE_HEADER and will be displayed on every page. The data will be populated as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
! Report Item !! Data Fields !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Company Logo  || EPOD_JOB_GROUPS.EPL_LOGO   || The logo taken from the job group, if a logo exists, otherwise taken from the site.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;quot;ELLIOTT BAXTER &amp;amp;amp; COMPANY LIMITED&amp;quot;&amp;lt;br /&amp;gt;Delivery Note     || EPOD_JOB.EPL_JOB_TYPE   ||Fixed text, displaying Delivery or Collection depending on the Job Type.&lt;br /&gt;
|-&lt;br /&gt;
| Mr EBB Image   ||&amp;amp;nbsp; || Base64-encoded image embedded in the header.&lt;br /&gt;
|-&lt;br /&gt;
| Invoice To  || EPOD_CUSTOMER  || Taken from the customer address. Including Name, Address Lines and Postcode.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;quot;Deliver To&amp;quot;  || EPOD_JOB.EPL_JOB_TYPE   || Fixed text, displaying Deliver or Collect depending on the Job Type.&lt;br /&gt;
|-&lt;br /&gt;
| Deliver To  || EPOD_JOB_ADDRESS || Taken from the job address. Including Name, Address Lines and Postcode.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;quot;Delivery Instructions&amp;quot;  || EPOD_JOB.EPL_JOB_TYPE   || Fixed text, displaying Delivery or Collection depending on the Job Type.&lt;br /&gt;
|-&lt;br /&gt;
| Delivery Instructions  || EPOD_JOB.EPL_JOB_INSTRUCTION || The job instructions.&lt;br /&gt;
|-&lt;br /&gt;
| DATE     || EPOD_JOB.EPL_START_PLANNED_DATE || The planned start date, in dd/mm/yyyy format.&lt;br /&gt;
|-&lt;br /&gt;
| BRANCH   || EPOD_JOB.EPL_OWNER_NAME || The sales territory.&lt;br /&gt;
|-&lt;br /&gt;
| DEL DATE     || EPOD_JOB.EPL_START_PLANNED_DATE || The planned start date, in dd/mm/yyyy format.&lt;br /&gt;
|-&lt;br /&gt;
| DELIVERY TIME    || EPOD_JOB.EPL_START_PLANNED_TIME || The planned start time, in hh:mm format.&lt;br /&gt;
|-&lt;br /&gt;
| S TIME   || EPOD_JOB.EPL_START_ACTUAL_TIME || The actual start time, in hh:mm format.&lt;br /&gt;
|-&lt;br /&gt;
| E TIME   || EPOD_JOB.EPL_END_ACTUAL_TIME || The actual end time, in hh:mm format.&lt;br /&gt;
|-&lt;br /&gt;
| DEL NOTE NO  || EPOD_JOB.EPL_JOB_CODE || The SO number.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Product details will be shown on every page, showing up to 10 products per page, as defined by the report settings above. &lt;br /&gt;
The reported elements will be taken from EPOD_PRODUCT. Cancelled products (i.e. those with a status of &amp;quot;X&amp;quot; and a quantity of 0) will not be shown in this section.&lt;br /&gt;
The detail table header will be defined in ECR_CONTENT_TITLE as shown below.&lt;br /&gt;
Each page will fill the detail table to the maximum amount per page, defined by entering an empty row definition in ECR_CONTENT_EMPTY.&lt;br /&gt;
&lt;br /&gt;
Each row will be defined in ECR_CONTENT_ROW as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
! Report Item !! Data Fields !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ORDER NO   || EPOD_PRODUCT.EPL_CUST_REF  || The customer's order number.&lt;br /&gt;
|-&lt;br /&gt;
| QTY   || EPOD_PRODUCT.EPL_PRODUCT_QTY_ACTUAL  || The actual quantity of the product delivered, as confirmed by the driver.&lt;br /&gt;
|-&lt;br /&gt;
| UNITS   || EPL_UNIT_TYPE    || The UOFM, as stored from the interface&lt;br /&gt;
|-&lt;br /&gt;
| QUALITY &amp;amp;amp; DESCRIPTION   || EPOD_PRODUCT.EPL_DESCRIPTION_LONG    || The full description and FSC text, as held in the Long Description field in C-ePOD. These will be displayed on two lines, substituting the CR/LF characters with an HTML Line Break tag.&lt;br /&gt;
|-&lt;br /&gt;
| PACKS   || EPL_PRODUCT_QTY_ACTUAL / &amp;lt;br /&amp;gt;EPL_PRODUCT_QTY_CASE   || The number of packs. This is a calculated value (denoted by &amp;quot;CALC:&amp;quot;) of the delivered quantity divided by the pack size, displayed with no decimal places.&lt;br /&gt;
|-&lt;br /&gt;
| KGS    || EPOD_PRODUCT.EPL_PRODUCT_WEIGHT   || The total weight of the delivered product. The weight will be sub-totalled.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Page Footer will be defined in ECR_PAGE_FOOTER and will be displayed on every page. The data will be populated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
! Report Item !! Data Fields !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;quot;Please be sure to check...&amp;quot;  || EPOD_JOB.EPL_TNCS    || T&amp;amp;Cs as signed for by the customer at the point of signing for the job. These are configured against the Job Group and are expected to be &amp;quot;Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which&lt;br /&gt;
is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&amp;quot;. Note that each job group may have different configured T&amp;amp;Cs.&lt;br /&gt;
|-&lt;br /&gt;
| Total Wgt  || TOT0 || The KGS subtotal, formatted with no decimal places.&lt;br /&gt;
|-&lt;br /&gt;
| Signature || EPOD_JOB.EPL_JOB_SIGNATURE   || The customer's signature. If not present, this should be a blank image rather than the standard &amp;quot;Image Not Available&amp;quot; text.&lt;br /&gt;
|-&lt;br /&gt;
| Print Name    || EPOD_JOB.EPL_CUST_SIGNATORY  || The signatory, captured by the driver on the device when the customer signs.&lt;br /&gt;
|-&lt;br /&gt;
| Date  || EPOD_JOB.EPL_END_ACTUAL_DATE || The actual end date, when the signature was obtained, in dd/mm/yyyy format.&lt;br /&gt;
|-&lt;br /&gt;
| Signed on behalf of: || EPOD_JOB.EPL_JOB_SIGNATURE   || The driver's signature, for unmanned locations. If not present, this should be a blank image rather than the standard &amp;quot;Image Not Available&amp;quot; text.&lt;br /&gt;
|-&lt;br /&gt;
| Print Name    || EPOD_USER.EPL_USER_NAME  || The driver's name, for unmanned locations&lt;br /&gt;
|-&lt;br /&gt;
| Date  || EPOD_JOB.EPL_END_ACTUAL_DATE || The actual end date, when the signature was obtained, in dd/mm/yyyy format.&lt;br /&gt;
|-&lt;br /&gt;
| No 1 for Service Image   || &amp;amp;nbsp; || Base64-encoded image embedded in the footer.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;quot;Only products identified ...&amp;quot;    || &amp;amp;nbsp; || Fixed text.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing the new POD report format&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=A system configured as EBB Paper.&lt;br /&gt;
|Objective=To test that the report format works as expected.&lt;br /&gt;
}} {{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Admin&lt;br /&gt;
|Notes=&amp;amp;nbsp;&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Job Groups and Site screens that the new EBB Paper report format can be set.&lt;br /&gt;
|Result=The new EBB Paper report format can be set.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=POD/POC Report&lt;br /&gt;
|Notes=Ensure there is a completed job with Products, configured to the &amp;quot;EBB Paper&amp;quot; POD/POC format. &lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report on the completed job.&lt;br /&gt;
|Result=The report layout is as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[[REQ 343463 EBB Paper Solution Design]]&lt;br /&gt;
|RefV1=2.0&lt;br /&gt;
|RefDate1=01/08/2017&lt;br /&gt;
|EREQ=0&lt;br /&gt;
|EEST=0&lt;br /&gt;
|EFS=0.75&lt;br /&gt;
|ETS=0&lt;br /&gt;
|EDEV=2.5&lt;br /&gt;
|ESTT=0.25&lt;br /&gt;
|EIMP=0.25&lt;br /&gt;
|EPM=0.25&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.75&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=2.5&lt;br /&gt;
|ST=0.25&lt;br /&gt;
|IMP=0.25&lt;br /&gt;
|PM=0.25&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|FOC=N&lt;br /&gt;
|Rev1=Matt Turner&lt;br /&gt;
|Rev1Title=OBSL Account Manager&lt;br /&gt;
|Rev2=Rebecca Elliott&lt;br /&gt;
|Rev2Title=Customer Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344275_SCR-343463-03_EBB_Paper_Mobile_Device_Styling&amp;diff=4892</id>
		<title>FS 344275 SCR-343463-03 EBB Paper Mobile Device Styling</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344275_SCR-343463-03_EBB_Paper_Mobile_Device_Styling&amp;diff=4892"/>
		<updated>2017-08-10T11:16:34Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Review and Issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|JBG}}&lt;br /&gt;
{{#vardefine:ClientName|EBB Paper}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|Custom Mobile Device Styling}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|10th August 2017}}&lt;br /&gt;
{{#vardefine:Reference|344275 SCR-343463-03}}&lt;br /&gt;
{{#vardefine:Year|2017}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
SCR-343463-3:	General Mobile Device Styling&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
The application will have a customised style created for EBB Paper, which will include:&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* Numeric password entry at Login&lt;br /&gt;
* A defined Job List style.&lt;br /&gt;
* A defined Product List style.&lt;br /&gt;
* Removal of the &amp;quot;Has this Delivery been checked&amp;quot; check box on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope ==&lt;br /&gt;
This change will be applied to system version 4.X.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The information displayed on these mobile device screens is subject to the data mapping for the EBB Paper project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
Each depot will have a site created for it.&lt;br /&gt;
&lt;br /&gt;
A new PDA Style will be created:&lt;br /&gt;
* &amp;quot;EBB&amp;quot;, labelled as &amp;quot;EBB Paper&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The C-ePOD site will be linked to the appropriate PDA Style through the Admin Sites Maintenance screen.&lt;br /&gt;
&lt;br /&gt;
[[File:FS_344275_Admin_Site1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Site Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each C-ePOD site will have the appropriate EBB Paper logo uploaded to it, and will be configured to show the Job Code on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== EBB Paper Style Changes ==&lt;br /&gt;
A style will be created using the style creator, called &amp;quot;EBB&amp;quot; with description &amp;quot;EBB Paper&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The basic layout and colour scheme will be taken from the existing &amp;quot;OBS2&amp;quot; style.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Login screen will display as follows:&lt;br /&gt;
*	The logo will be displayed from the Site logo uploaded within the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Job List will display only the following data per job:&lt;br /&gt;
*	Job ID, configured to be the Customer's Reference&lt;br /&gt;
*	Type (Collection or Delivery)&lt;br /&gt;
*	Customer Name&lt;br /&gt;
*	Planned Date only, in standard format&lt;br /&gt;
*	Post Code&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Collection/Delivery Address screen will display as follows&lt;br /&gt;
*	The &amp;quot;Collection/Delivery Checked&amp;quot; box will be removed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Product List will show only the following data per item:&lt;br /&gt;
* Product Barcode ID (EPL_PRODUCT_CODE)&lt;br /&gt;
* Product Description (EPL_DESCRIPTION)&lt;br /&gt;
* Pack Size (EPL_PRODUCT_QTY_CASE)&lt;br /&gt;
* UOM (EPL_UNIT_TYPE)&lt;br /&gt;
* Quantity (EPL_PRODUCT_QTY_PLANNED)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Signature screen will display as follows:&lt;br /&gt;
* The signatory will be blank at all times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All other items on all screens will display as per the default system style.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The style has been prototyped and can be seen in the development system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Screen-shot samples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=220px perrow=2&amp;gt;&lt;br /&gt;
File:FS_344275_Login1.png|''Login''&lt;br /&gt;
File:FS_344275_Login2.png|''Numeric password''&lt;br /&gt;
File:FS_344275_JobList1.png|''Job List''&lt;br /&gt;
File:FS_344275_ColDel1.png|''Collection/Delivery Details''&lt;br /&gt;
File:FS_344275_Products1.png|''Products List''&lt;br /&gt;
File:FS_344275_Products2.png|''Products Info''&lt;br /&gt;
File:FS_344275_Signature1.png|''Signature''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing the new EBB Paper mobile device style&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=A system configured as EBB Paper.&lt;br /&gt;
|Objective=To test the new EBB Paper style.&lt;br /&gt;
}} {{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Mobile Device&lt;br /&gt;
|Notes=Ensure there are &amp;quot;EBB Paper&amp;quot;-type jobs available for execution on the device.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Configure to the &amp;quot;EBB Paper&amp;quot; style. Load the mobile device app on a device and complete a job.&lt;br /&gt;
|Result=The login screen should show the correct logo. The Job list should be configured as expected. The &amp;quot;Deliver Checked&amp;quot; check box should not be present. The Products list should be as expected. No Signatory should be present on customer signature.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[[REQ 343463 EBB Paper Solution Design]]&lt;br /&gt;
|RefV1=2.0&lt;br /&gt;
|RefDate1=01/08/2017&lt;br /&gt;
|EREQ=0&lt;br /&gt;
|EEST=0&lt;br /&gt;
|EFS=0.25&lt;br /&gt;
|ETS=0&lt;br /&gt;
|EDEV=0.25&lt;br /&gt;
|ESTT=0.25&lt;br /&gt;
|EIMP=0.25&lt;br /&gt;
|EPM=0.0&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0.0&lt;br /&gt;
|ST=0.0&lt;br /&gt;
|IMP=0.0&lt;br /&gt;
|PM=0&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|FOC=N&lt;br /&gt;
|Rev1=Matt Turner&lt;br /&gt;
|Rev1Title=OBSL Account Manager&lt;br /&gt;
|Rev2=Rebecca Eliott&lt;br /&gt;
|Rev2Title=Customer Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344273_SCR-343463-01_EBB_Paper_Bespoke_Import_Interface&amp;diff=4891</id>
		<title>FS 344273 SCR-343463-01 EBB Paper Bespoke Import Interface</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344273_SCR-343463-01_EBB_Paper_Bespoke_Import_Interface&amp;diff=4891"/>
		<updated>2017-08-10T09:51:06Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|EBB}}&lt;br /&gt;
{{#vardefine:ClientName|EBB Paper}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|Bespoke Import Interface}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|10th August 2017}}&lt;br /&gt;
{{#vardefine:Reference|344273 SCR-343463-01}}&lt;br /&gt;
{{#vardefine:Year|2017}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
SCR-343463-01: Bespoke Import Interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OBS Logistics have been requested to write the interface in order to speed up the delivery of the project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The loads are interfaced from MSA in a custom XML format in a flat-file, after the routes are planned. A button is pressed when the manifest is finished planning to create this file.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The manifests are used for picking. If additional orders are added to the vehicle (add-ons), the orders are placed on a separate manifest, for the same vehicle on the same day. This is because adding orders to an existing manifest (which is possible) will confuse the pickers and potentially result in double picks. This occurs quite frequently on radial deliveries.&lt;br /&gt;
&lt;br /&gt;
This file does not contain all the information required to create the jobs. Predominantly, address information and product case details are missing from this interface file. The remaining information is to be accessed directly from a view on the ERP system, running a SQL Server database.&lt;br /&gt;
&lt;br /&gt;
== Solution Overview ==&lt;br /&gt;
The interface created will be triggered by the receipt of the TMS XML file. The processing of the jobs on this file will retrieve the information on the orders from a view available in the ERP, through direct connection to this database. &lt;br /&gt;
&lt;br /&gt;
{{Note}} The C-ePOD system will be hosted by OBS, whilst the ERP is hosted by the customer. This interface will need to connect to this ERP to access the view to get the job details. There is a technical requirement to have the two servers connected, which will require action by OBS technical services and the customer in collaboration.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A scheduled import process will be created on the system, running at a timed interval.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There will be multiple manifests sent for the same vehicle on the same day. These must be combined into a single manifest on C-ePOD. {{Note}} In order for the interface to successfully combine manifests, it is assumed that there will be one load required per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Manifests (that create Loads in C-ePOD) will be allocated to a vehicle and/or driver. This allows the loads to be created and allocated to a driver for completion. Note however that, once created, the {{#var:System}} Admin system (Load or User screens) may be used to change allocation of vehicles and drivers on a load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface will create loads, one per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
The system will be configured to create standing data from the received import information, such as:&lt;br /&gt;
* Drivers&lt;br /&gt;
* Customers (Invoice Addresses)&lt;br /&gt;
* Vehicles&lt;br /&gt;
As noted above, it is expected that this data will be created at implementation.&lt;br /&gt;
&lt;br /&gt;
When C-ePOD receives an inbound file from the customer, drivers and vehicles will be created as part of this interface, if they do not exist. The driver ID will be created as the first character of the first name, and up to the first 4 characters of the surname, with a 3-digit unique identifier added to them.&lt;br /&gt;
 &lt;br /&gt;
For example:&lt;br /&gt;
*         &amp;quot;DAVID EASTMAN&amp;quot; will become &amp;quot;DEAST001&amp;quot;&lt;br /&gt;
*         &amp;quot;SMITH JOHN&amp;quot; will become &amp;quot;SJOHN001&amp;quot;&lt;br /&gt;
*         &amp;quot;DEREK MAY&amp;quot; will become &amp;quot;DMAY001&amp;quot;&lt;br /&gt;
*         &amp;quot;TRUNKER M25&amp;quot;. TRUNKER M25 will become &amp;quot;TM25001&amp;quot;&lt;br /&gt;
Note that where other drivers have similar names, the generated ID will increment the unique identifier. So:&lt;br /&gt;
*         &amp;quot;DIANE EASTMAN&amp;quot; will become &amp;quot;DEAST002&amp;quot;&lt;br /&gt;
*         &amp;quot;SANDERSON JOHN&amp;quot; will become &amp;quot;SJOHN002&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
The password will be defaulted to the user name.&lt;br /&gt;
&lt;br /&gt;
It is noted that EBB will tidy up the list of drivers before the implementation&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sites will be created for each depot, following the encoding within the customer systems:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!GP Site ID	!!GP ADI Site ID	!!Fleet name&lt;br /&gt;
|-&lt;br /&gt;
|03 CHARLTO	||903 ADI	||Thurrock&lt;br /&gt;
|-&lt;br /&gt;
|04 FARNBOR	||904 ADI	||Farnborough&lt;br /&gt;
|-&lt;br /&gt;
|05 WATFORD	||905 ADI	||Watford&lt;br /&gt;
|-&lt;br /&gt;
|09 YEOVIL	||909 ADI	||BRISTOL&lt;br /&gt;
|-&lt;br /&gt;
|10 BIRMING	||910 ADI	||Birmingham&lt;br /&gt;
|-&lt;br /&gt;
|11 MANCHES	||911 ADI	||Manchester&lt;br /&gt;
|-&lt;br /&gt;
|12 SHEFFIE	||912 ADI	||Sheffield&lt;br /&gt;
|-&lt;br /&gt;
|13 NEWCAST	||913 ADI	||Newcastle&lt;br /&gt;
|-&lt;br /&gt;
|14 GLASGOW	||914 ADI	||Glasgow&lt;br /&gt;
|-&lt;br /&gt;
|31 FELIXST	||931 ADI	||Felixstowe&lt;br /&gt;
|-&lt;br /&gt;
|32 MAREXPO	||932 ADI	||Marexport&lt;br /&gt;
|}&lt;br /&gt;
{{Note}} The site is taken from the Originating Depot. The ADI site ID will be considered to be the GP site ID in this interface. Any manifests in the file for sites not in this list will not have loads or jobs created for them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface must identify the Site (the executing depot) and the Owner (the originator). &lt;br /&gt;
* The owner is considered the Sales Territory (column SALSTERR in the MSA view) &lt;br /&gt;
* The executing depot is the depot property on the '''manifest''' tag in the XML file.&lt;br /&gt;
&lt;br /&gt;
It is noted that the following will be Owners only and will not be operators:&lt;br /&gt;
* 08 PRINTMT&lt;br /&gt;
* 20 EBBOFFI&lt;br /&gt;
* 30 GLOSSOP&lt;br /&gt;
&lt;br /&gt;
The following columns are also noted from the MSA view:&lt;br /&gt;
*         DefaultSiteID - the final delivery depot&lt;br /&gt;
*         Originating Depot - the depot from which the product is sourced. {{Note}} The ''depot'' attribute of the '''order''' tag in the TMS XML file also identifies the originating depot. For example, if this contains &amp;quot;\03&amp;quot; this identifies &amp;quot;03 CHARLTON&amp;quot; as the depot (and THURROCK as the fleet).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The manifest on which a job is received will be stored against the job in C-ePOD, as well as any of the other customer references. This will be used by the interface to determine if the manifest has been received before. If this is the case, and the manifest has been modified (i.e. orders or products removed or added), this will be used by the system to determine whether jobs are to be added to the created load for this vehicle and day, or whether the jobs will be removed (deleted). Products not on the jobs updated will be removed, and new products added.&lt;br /&gt;
&lt;br /&gt;
The jobs will be placed on the Load in the order in which they are received in the manifest file. If a further manifest is received for this vehicle, the jobs will be added to the end of the manifest. A hard sequence will be generated for the jobs on the manifest.&lt;br /&gt;
&lt;br /&gt;
In the interface, orders for the same customer code will be linked together and consolidated on the device, ensuring that only one delivery instruction is present, although both orders will be maintained.&lt;br /&gt;
&lt;br /&gt;
The interface will consolidate jobs together if:&lt;br /&gt;
*         The manifest on which the job is received is determined to be on the same Load as other jobs.&lt;br /&gt;
*         The job has the same customer and delivery address as another job on the load.&lt;br /&gt;
*         The other jobs are not completed or cancelled.&lt;br /&gt;
*         They are the same type i.e. deliveries can consolidate with deliveries and collections with collections only.&lt;br /&gt;
Note that the consolidation process will not use the delivery time of the orders when determining whether to consolidate jobs.&lt;br /&gt;
&lt;br /&gt;
Note also that the driver will have the ability to manually consolidate and deconsolidate jobs on the device when executing the load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are many different types of orders. The type is identified through the alpha prefix against the order. The main types are below:&lt;br /&gt;
* INV - Delivery order&lt;br /&gt;
* CAL - Call-off. Considered to be the same as an INV order.&lt;br /&gt;
* RTN - Collection from customer.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only these order types will be uploaded to the C-ePOD system as jobs. All other types will be excluded when processing the files. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Any manifests marked as TRUNK (in the '''trailer''' tag of the TMS XML file) will also not be processed.&lt;br /&gt;
&lt;br /&gt;
Desk collections will be interfaced to C-ePOD on a separate manifest per depot, but with a driver of &amp;quot;WAREHOUSE&amp;quot;. {{Note}} The view MSA contains a column that identifies whether this is a customer collection (column CustColl), but this is unreliable.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Job Instructions should be populated with Order comments (OrdComm) and Delivery Instructions (DelIns) concatenated together.&lt;br /&gt;
&lt;br /&gt;
When receiving jobs through the interface, the invoice (customer) address will be updated, if this has changed. EBB Paper have confirmed that the Invoice address changing is as expected. It has been confirmed that any previous jobs with this invoice (customer) address will from that point show the new invoice address, and this is acceptable to EBB Paper.&lt;br /&gt;
&lt;br /&gt;
Planned delivery times will be maintained on each job created. &lt;br /&gt;
&lt;br /&gt;
There are essentially 2 types of order:&lt;br /&gt;
* A non-timed delivery will have a cut off of 14:00&lt;br /&gt;
* Timed Delivery&lt;br /&gt;
&lt;br /&gt;
{{Note}} Development work is required with GP to allow the EBB Paper sales team to maintain times on the order. This will be an EBB Paper task to complete.&lt;br /&gt;
&lt;br /&gt;
The start and end planned dates and times will be populated from the values in the following MSA view columns:&lt;br /&gt;
*	Start Planned Date - ReqShipDate&lt;br /&gt;
*	Start Planned Time - StartTime if populated, else 0600&lt;br /&gt;
*	End Planned Date - ReqShipDate&lt;br /&gt;
*	End Planned Time - DelTime if populated, else FinishTime if populated, else 1400.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs will be set with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be Job Group configurations for the different job types, as they will have different execution processes on the mobile devices:&lt;br /&gt;
* Radial Collection/Delivery&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Desk Collect&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature will ''not'' be enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
For all jobs groups, it is expected that the following will also be configured:&lt;br /&gt;
* No Job Photo&lt;br /&gt;
* EBB Paper POD format&lt;br /&gt;
* Terms and Conditions is expected to be set to:&lt;br /&gt;
** Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The products will be created on each job created with the details taken from the ERP. The details expected to be received are:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description - stored as a truncated value&lt;br /&gt;
* FSC number (optional) - stored with the full product description in the long description field.&lt;br /&gt;
* Pack Size&lt;br /&gt;
* UOM&lt;br /&gt;
* Weight&lt;br /&gt;
* Quantity&lt;br /&gt;
&lt;br /&gt;
The pack size of the product will be taken from the ERP view in the interface. This will come from Sell Pack in the interface. It is noted that there is also a Purch Pack field, and it is confirmed that C-ePOD has no place to store this information.&lt;br /&gt;
&lt;br /&gt;
UOFM is the defined unit of measure of the product being delivered. There are multiple products UOMs that require the quantity to be decimal (for example, Weight (TONNES), Length (LINEAR METRES), Area (METRES SQUARED). In order for this to be achieved, the C-ePOD import interface for this system will multiply the quantities by a factor (for example, SHEETS UOM is in 1000's, so quantity 1.4 is actually 1400 sheets). &lt;br /&gt;
&lt;br /&gt;
The following is a list of the UOFMs known at this time and the proposals to handle them:&lt;br /&gt;
*	1 - always 1 - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	1000 - quantity will be multiplied by 1000.&lt;br /&gt;
*	BOTTLE - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	BOX - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	CHARGE - Excluded - this is a delivery charge. No line will be created.&lt;br /&gt;
*	EACH - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ENVS - Envelopes. Quantity will be multiplied by 1000. &lt;br /&gt;
*	MISC - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ROLL - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	SETS - Multi-part paper. Quantity will be multiplied by 1000.&lt;br /&gt;
*	SHEETS - quantity will be multiplied by 1000&lt;br /&gt;
*	TONNE - quantity will be multiplied by 1000 and the UOM set to &amp;quot;KGS&amp;quot;.&lt;br /&gt;
*	METRES SQUARED - quantity will be multiplied by 1000.&lt;br /&gt;
*	LINEAR METRES - quantity will be multiplied by 1000.&lt;br /&gt;
&lt;br /&gt;
There are then essentially 4 rules:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!RULE	!!UOMS&lt;br /&gt;
|-&lt;br /&gt;
|Multiply by 1000 	||1000, ENVS, SETS, SHEETS, METRES SQUARED, LINEAR METRES&lt;br /&gt;
|-&lt;br /&gt;
|Round up to nearest integer value	||1, BOTTLE, BOX, EACH, MISC, ROLL&lt;br /&gt;
|-&lt;br /&gt;
|Exclude	||CHARGE&lt;br /&gt;
|-&lt;br /&gt;
|Multiply by 1000 and change to KGS	||TONNE&lt;br /&gt;
|}&lt;br /&gt;
Any not on the list would follow the first rule (i.e. multiply quantity by 1000).&lt;br /&gt;
&lt;br /&gt;
Note that the above method has been confirmed by the customer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This process will create jobs as part of loads on the interface. It is possible that additional information may need to be communicated to the driver whilst out in the field. In this case, the WEBFLEET messaging function will be used by the operation. Furthermore, it is noted that additional jobs may be created in C-ePOD Admin for ad-hoc collections. For example, adding a job at the end of the shift (load) to go to a customer and pick up some empty pallets. {{Note}} This job will exist solely in C-ePOD, as the jobs are not being interfaced back to GP when complete. EBB Paper must take care when adding jobs of this type, ensuring that any subsequent actions required for these jobs is handled (for example, invoicing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope ==&lt;br /&gt;
This change will be applied to system version 3.X.&lt;br /&gt;
&lt;br /&gt;
This change includes up to 2 days relating to the external MSA view, for set-up and testing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
A new Interface ID of &amp;quot;EBB&amp;quot;, description &amp;quot;EBB&amp;quot;, will be added to the EPOD_LIST_ITEMS for XF Interface IDs.&lt;br /&gt;
&lt;br /&gt;
A new Code Type of &amp;quot;UOM&amp;quot;, description &amp;quot;UOMs&amp;quot;, will be added to the EPOD_LIST_ITEMS for Reason Codes.&lt;br /&gt;
&lt;br /&gt;
A new EPOD_LISTS ID must be configured for Code Conversion Types, with the following List Items on EPOD_LIST_ITEMS, with Description and Value set as follows:&lt;br /&gt;
*   Value &amp;quot;MULTIPLY&amp;quot;, Description &amp;quot;Multiply&amp;quot;. This is the default value for EBB Paper.&lt;br /&gt;
*   Value &amp;quot;ROUND&amp;quot;, description &amp;quot;Round&amp;quot;.&lt;br /&gt;
*   Value &amp;quot;EXCLUDE&amp;quot;, description &amp;quot;Exclude&amp;quot;.&lt;br /&gt;
*   Value &amp;quot;DEFAULT&amp;quot;, description &amp;quot;As Received&amp;quot;. This is the default value for all other customers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sites for each depot will be configured. Each site will be set up with EPL_EXT_FLEET set to the fleet name, as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Site ID	!!Fleet&lt;br /&gt;
|-&lt;br /&gt;
|03 CHARLTO	||THURROCK&lt;br /&gt;
|-&lt;br /&gt;
|04 FARNBOR	||FARNBOROUGH&lt;br /&gt;
|-&lt;br /&gt;
|05 WATFORD	||WATFORD&lt;br /&gt;
|-&lt;br /&gt;
|09 YEOVIL	||BRISTOL&lt;br /&gt;
|-&lt;br /&gt;
|10 BIRMING	||BIRMINGHAM&lt;br /&gt;
|-&lt;br /&gt;
|11 MANCHES	||MANCHESTER&lt;br /&gt;
|-&lt;br /&gt;
|12 SHEFFIE	||SHEFFIELD&lt;br /&gt;
|-&lt;br /&gt;
|13 NEWCAST	||NEWCASTLE&lt;br /&gt;
|-&lt;br /&gt;
|14 GLASGOW	||GLASGOW&lt;br /&gt;
|-&lt;br /&gt;
|31 FELIXST	||FELIXSTOWE&lt;br /&gt;
|-&lt;br /&gt;
|32 MAREXPO	||MAREXPORT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_Site1.png|''Site Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A new Import Interface configuration will be set up. This is required only for one of the sites, expected to be the first site &amp;quot;03 CHARLTO&amp;quot;:&lt;br /&gt;
*	EPL_XF_CONFIG_ID - &amp;quot;03 CHARLTO&amp;quot;&lt;br /&gt;
*	EPL_DESCRIPTION - As required&lt;br /&gt;
*	EPL_XF_TYPE - &amp;quot;FTP&amp;quot; or &amp;quot;FILE&amp;quot;&lt;br /&gt;
*	EPL_XF_DESTINATION - remote FTP server and path for FTP, local file path for FILE&lt;br /&gt;
*	EPL_XF_ID - &amp;quot;EBB&amp;quot;&lt;br /&gt;
*	EPL_WEB_USER - FTP user for FTP&lt;br /&gt;
*	EPL_WEB_PASSWORD - FTP password for FTP&lt;br /&gt;
*	EPL_DB_CONNECTION  - MSA database connection information e.g. &amp;quot;Data Source=[SERVER];Initial Catalog=[DB_NAME];User Id=[USER];Password=[PASSWORD];&amp;quot;&lt;br /&gt;
*	EPL_XF_DIRECTION - &amp;quot;I&amp;quot; - Import type&lt;br /&gt;
*	EPL_EXPORT_JOB_TYPES - &amp;quot;INV|CAL|RTN&amp;quot; - list of Order Types to be processed, pipe-delimited. Up to 5 allowed&lt;br /&gt;
*	EPL_FILENAME - Filename to match when picking up files. Expected to be &amp;quot;Manifest_*.xml&amp;quot;.&lt;br /&gt;
*	EPL_EMAIL_ERRORS - email address for file processing error notifications&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_XFConfig1.png|''New EBB Import Configuration''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A generic TTM Export configuration will be created (as ID &amp;quot;TTM&amp;quot;), as well as a specific TTM Export configuration for the first site (e.g. &amp;quot;03 CHARLTO&amp;quot;). The configuration of both will be identical apart from the Config ID.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_XFConfig2.png|''TTM Export Sample Configuration''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Interfaces for each site will be set as follows:&lt;br /&gt;
* For Site ID &amp;quot;03 CHARLTO&amp;quot;, set the XF Config ID to &amp;quot;03 CHARLTO&amp;quot;.&lt;br /&gt;
* For all other sites, set to &amp;quot;TTM&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be Job Group configurations for the different job types, as they will have different execution processes on the mobile devices.&lt;br /&gt;
&lt;br /&gt;
Job Groups will be created as follows for each site above:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Job Group	!!Description&lt;br /&gt;
|-&lt;br /&gt;
|COL    || Radial Collection&lt;br /&gt;
|-&lt;br /&gt;
|DEL    || Radial Delivery&lt;br /&gt;
|-&lt;br /&gt;
|DESK    || Desk Collections&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_JobGroups1.png|''Job Groups Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The set-up of each job group will include the following:&lt;br /&gt;
* Radial Collection/Delivery&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Desk Collect&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature will ''not'' be enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
&lt;br /&gt;
For all jobs groups, it is expected that the following will also be configured:&lt;br /&gt;
* No Job Photo&lt;br /&gt;
* EBB Paper POD format&lt;br /&gt;
* Terms and Conditions is expected to be set to:&lt;br /&gt;
** Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All of the UOMs required by the customer should be configured on the Admin Codes Maintenance screen for all sites. The values known at this time are as follows, with the Conversion settings required for each:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Conversion Type	!! Value	!! Code	!! UOMS&lt;br /&gt;
|-&lt;br /&gt;
|Multiply	|| 1000	||&amp;amp;nbsp;	|| 1000, ENVS, SETS, SHEETS, METRES SQUARED, LINEAR METRES&lt;br /&gt;
|-&lt;br /&gt;
|Round 	|| 1	||&amp;amp;nbsp;	|| 1, BOTTLE, BOX, EACH, MISC, ROLL&lt;br /&gt;
|-&lt;br /&gt;
|Exclude	||&amp;amp;nbsp;	||&amp;amp;nbsp;	|| CHARGE&lt;br /&gt;
|-&lt;br /&gt;
|Multiply 	|| 1000	|| KGS	|| TONNE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_Codes1.png|''Codes Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== Database &amp;amp; Data Access Layer ==&lt;br /&gt;
The following fields will be added to the Job table EPOD_REASON_CODE:&lt;br /&gt;
*   EPL_CONV_TYPE - nvarchar(10)&lt;br /&gt;
*   EPL_CONV_VALUE - float&lt;br /&gt;
*   EPL_CONV_CODE - nvarchar(20)&lt;br /&gt;
&lt;br /&gt;
These fields will be added to all stored procedures in the database that require them.&lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required on the device.&lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required to be set on codes imported through the standard XML import (flat file or webservice). &lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required to be contained within the Export.&lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required to be used when filtering data for selection.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following fields will be added to the Job table EPOD_XF_CONFIG:&lt;br /&gt;
*   EPL_DB_CONNECTION - nvarchar(255)&lt;br /&gt;
&lt;br /&gt;
This field will be added to all stored procedures in the database that require it.&lt;br /&gt;
&lt;br /&gt;
This field is ''not'' required on the device.&lt;br /&gt;
&lt;br /&gt;
This field is ''not'' required to be used when filtering data for selection.&lt;br /&gt;
&lt;br /&gt;
{{Note}} All DAL objects that link to XF_CONFIG may also require change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The EPOD_SETUP stored procedure will be modified for the new EPOD_LISTS and EPOD_LIST_ITEMS values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Admin ==&lt;br /&gt;
=== Codes Maintenance Screen ===&lt;br /&gt;
The Codes Maintenance screen (reason_code.aspx) will be modified to support UOMs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_Codes1.png|''Codes Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The '''Find''' criteria will be modified to allow selection of the new &amp;quot;UOM&amp;quot; type. Additionally, a blank &amp;quot;-- Select --&amp;quot; option will also be provided, for when the user wished to see all codes of all types. A new Code Type of &amp;quot;UOM&amp;quot; (description &amp;quot;UOMs&amp;quot;) will be added to the EPOD_LIST_ITEMS for Reason Codes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The results table does ''not'' require modifications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The pop-up Entry/Edit form will be modified for entry of the new UOM codes.&lt;br /&gt;
&lt;br /&gt;
This is accessed when entering a new code using the '''New''' button, and when editing existing codes by clicking the '''Select''' button against a line in the results table.&lt;br /&gt;
&lt;br /&gt;
The user will be allowed to enter codes of type &amp;quot;UOM&amp;quot;, selected from the drop-down list.  A new Code Type of &amp;quot;UOM&amp;quot; will be added to the EPOD_LIST_ITEMS for Reason Codes.&lt;br /&gt;
&lt;br /&gt;
When editing or adding reason codes of type &amp;quot;UOM&amp;quot; ''only'', new fields will be present on the pop-up form, as shown below:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Label	!!Field	!!Pop-up Help&lt;br /&gt;
|-&lt;br /&gt;
|Conversion Type	|| EPL_CONV_TYPE	||USED BY BESPOKE INTERFACES ONLY to determine whether the quantity is modified or the line processed when the UOM against the product line matches this value&lt;br /&gt;
|-&lt;br /&gt;
|Value	|| EPL_CONV_VALUE	||USED BY BESPOKE INTERFACES ONLY. If Conversion Type is &amp;quot;Multiply&amp;quot;, this value is used to multiply the product quantity. If Conversion Type is &amp;quot;Round&amp;quot;, this is used to round the quantity to the nearest value provided here.&lt;br /&gt;
|-&lt;br /&gt;
|XRef Code	|| EPL_CONV_CODE	||USED BY BESPOKE INTERFACES ONLY. If present, the UOM is converted to the value provided here.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These should be laid out as shown in the screenshot in the pop-up form.&lt;br /&gt;
&lt;br /&gt;
The Conversion Type will be added with the following drop-down list items, populated from the EPOD_LISTS and EPOD_LIST_ITEMS tables.&lt;br /&gt;
* &amp;quot;Multiply&amp;quot; - enter numeric value for multiplication.&lt;br /&gt;
* &amp;quot;Round&amp;quot; - enter value to round to (e.g. 1 means integer value, 0.25 is round to nearest 0.25, etc)&lt;br /&gt;
* &amp;quot;Exclude&amp;quot; - lines of this DU type are not added at all - Value field disabled.&lt;br /&gt;
* &amp;quot;As Received&amp;quot; - no calculation - Value field disabled.&lt;br /&gt;
&lt;br /&gt;
The default value for this list will be set by the default value in the EPOD_LIST_ITEMS table, as follows:&lt;br /&gt;
* Defaults to Type &amp;quot;Multiply&amp;quot; for EBB Paper &lt;br /&gt;
* Default to &amp;quot;As Received&amp;quot; for all other customers.&lt;br /&gt;
&lt;br /&gt;
The Value field will be enabled only if the following values are selected in the Conversion Type:&lt;br /&gt;
* Multiply&lt;br /&gt;
* Round&lt;br /&gt;
The Value field will be a numeric text field, allowing decimal entry, defaulting to &amp;quot;1000&amp;quot; if enabled. &lt;br /&gt;
&lt;br /&gt;
The XRef Code will be a drop-down list of all codes of the Code Type being edited/added by this screen, and will be populated on selection of the Code Type. This drop-down list will include a blank default value of &amp;quot;Blank&amp;quot;, and show the Code and Descriptions of all the selected codes. The list will be ordered by the Code, ascending.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When saving, the values will be saved in the appropriate fields on the EPOD_REASON_CODE table, as shown above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Interface Config Screen ===&lt;br /&gt;
The Import/Export Maintenance screen (xf_config.aspx) will be modified to support configuration of the new EBB Paper interface.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_XFConfig1.png|''Import/Export Configuration Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Fields required to be displayed when configuring the &amp;quot;EBB&amp;quot; interface:&lt;br /&gt;
*	EPL_XF_CONFIG_ID - Always displayed.&lt;br /&gt;
*	EPL_DESCRIPTION - Always displayed.&lt;br /&gt;
*	EPL_XF_TYPE - Always displayed.&lt;br /&gt;
*	EPL_XF_DESTINATION - Always displayed.&lt;br /&gt;
*	EPL_XF_ID - Always displayed. This drop-down list will be modified to include ID &amp;quot;EBB&amp;quot;.&lt;br /&gt;
*	EPL_XF_DIRECTION - Always displayed.&lt;br /&gt;
*	EPL_WEB_USER - only if FTP or SOAP transfer types are selected.&lt;br /&gt;
*	EPL_WEB_PASSWORD - only if FTP or SOAP type selected&lt;br /&gt;
*	EPL_DB_CONNECTION - This new field will only display if type &amp;quot;EBB&amp;quot; is selected and will include validation that it must be entered. This will be labelled as &amp;quot;Database Connection&amp;quot;. The field will be a wide entry field (at least double the width of a standard field). &lt;br /&gt;
*	EPL_EXPORT_JOB_TYPES - Display if type is &amp;quot;EBB&amp;quot;. The validation on this field will be modified so that pipe-delimited list of anything can be entered, if the type is &amp;quot;EBB&amp;quot;.&lt;br /&gt;
*	EPL_FILENAME - Filename to match when picking up files. Expected to be &amp;quot;Manifest_*.xml&amp;quot;.&lt;br /&gt;
*	EPL_EMAIL_ERRORS - email address for file processing error notifications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Auto-Import ==&lt;br /&gt;
=== General ===&lt;br /&gt;
The process will update and create all data as required, committing each as they are processed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are instances where the failure reason will result in the following processing:&lt;br /&gt;
* Stop processing this file and all further files (Failed Import).&lt;br /&gt;
* Stop processing this file and process subsequent files (Failed File).&lt;br /&gt;
* Stop processing this order and move to the next order (Failed Order).&lt;br /&gt;
&lt;br /&gt;
Failed Import reasons:&lt;br /&gt;
* Unable to connect to MSA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Failed File reasons:&lt;br /&gt;
* Standing Data not being created:&lt;br /&gt;
** User does not exist&lt;br /&gt;
** Vehicle does not exist&lt;br /&gt;
** Job Group does not exist&lt;br /&gt;
* Non-DESK manifest is on a load that has already been completed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Failed Order reasons:&lt;br /&gt;
* No details of this order in MSA&lt;br /&gt;
* Job for this order already complete&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Reasons why a Manifest file will not create Loads and Jobs:&lt;br /&gt;
* Site does not exist&lt;br /&gt;
* Manifest is a trunk.&lt;br /&gt;
* Jobs are of the wrong type.&lt;br /&gt;
* There are no valid products on the job.&lt;br /&gt;
* There are no valid jobs on a Load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If there are issues processing, the whole file will be rejected and will need to be reprocessed. However, all data saved to that point will be present.&lt;br /&gt;
&lt;br /&gt;
Audit records will be maintained, identifying successfully processed and failed import files, identifying the reason why a file failed to import. &lt;br /&gt;
&lt;br /&gt;
It is possible for a manifest to generate multiple audit reasons when processing a file. All of these codes will be audited. Multiple audit records may be maintained per file, or a single audit record created with all details in it. This will be decided when developed, based on which method is a more generic solution for the C-ePOD product.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rejected files will be emailed (depending on configuration) and will be stored in the standard Failed files location, as the processes do now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The process generating the email will be modified to include the auditing of the file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When a file is reprocessed, this will over-write and update the existing data, as specified in the processing below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The processing of each file will proceed as follows:&lt;br /&gt;
* Retrieve Manifest files.&lt;br /&gt;
* Filter and validate the manifest file.&lt;br /&gt;
* Create User and Vehicle data.&lt;br /&gt;
* Create a new Load or combine to an existing Load.&lt;br /&gt;
* Create or update jobs on the load, through a link to the MSA view.&lt;br /&gt;
* Create or update products on the jobs.&lt;br /&gt;
* Remove any products from the job not contained in the manifest file.&lt;br /&gt;
* Remove any jobs from the load not contained in the manifest file.&lt;br /&gt;
These areas are covered in the following sections&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
=== Retrieve Manifest Files ===&lt;br /&gt;
For FILE transfer type, currently all files in the specified destination folder (EPL_XF_DESTINATION) are processed (using Directory.GetFiles). This will be modified so that, if a filename pattern is specified (in EPOD_XF_CONFIG.EPL_FILENAME), the process will only retrieve and process files matching this pattern (by passing a second parameter to the GetFiles method, specifying the pattern from EPOD_XF_CONFIG.EPL_FILENAME).&lt;br /&gt;
&lt;br /&gt;
For FTP transfer type, the same is true, in that all files are retrieved (using ListDirectory in method GetFileList). No facility exists to pattern-match file names. Therefore the method GetFileList will be modified so that, if a filename pattern is specified (to be passed to an overloaded method in a new parameter, passing EPOD_XF_CONFIG.EPL_FILENAME), the process will only add these to the result if the filename returned matches the pattern provided.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Regardless of whether the file was retrieved through FTP or from the filesystem, each file (representing a single manifest) will be passed to a new processing method to validate and process the contents and create jobs and products. The current process bases this on EPL_MSG_TYPE. This will be extended to check the EPL_XF_ID field - should this be &amp;quot;EBB&amp;quot;, the new processing method will be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A file failing to process will not stop subsequent files from processing. However, if the MSA view cannot be connected to, processing will stop (see section Create Jobs for details on the MSA View connection).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Validate the Manifest ===&lt;br /&gt;
This process will receive the manifest contents as an XML file. &lt;br /&gt;
&lt;br /&gt;
The '''depot''' tag will be extracted from the '''manifest/header''' tag contents. The site will be retrieved using the EPL_EXT_FLEET field. If a site is not found with a fleet matching the '''depot''' tag, the manifest will not be processed. {{Note}} This is not an error and will not be audited as such - the manifest will be marked as successfully processed.&lt;br /&gt;
&lt;br /&gt;
The site retrieved will be stored by the process in an EPOD_SITE DAL object.&lt;br /&gt;
&lt;br /&gt;
The '''trailer''' tag will be extracted from '''manifest/header''' tag contents. If this tag contains the text &amp;quot;TRUNK&amp;quot;, then this manifest will not be processed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Vehicles and Users ===&lt;br /&gt;
The '''driver''' tag will be extracted from the '''manifest/header''' tag contents. &lt;br /&gt;
&lt;br /&gt;
If this driver is set to &amp;quot;WAREHOUSE&amp;quot;, the user ID will be created as this value.&lt;br /&gt;
&lt;br /&gt;
If this is a non-zero value that is not explicitly &amp;quot;WAREHOUSE&amp;quot;, C-ePOD will attempt to create the driver ID (if configured to do so) as the first character of the first name, and up to the first 4 characters of the surname, with a 3-digit unique identifier added to them.&lt;br /&gt;
 &lt;br /&gt;
For example:&lt;br /&gt;
*         &amp;quot;DAVID EASTMAN&amp;quot; will become &amp;quot;DEAST001&amp;quot;&lt;br /&gt;
*         &amp;quot;SMITH JOHN&amp;quot; will become &amp;quot;SJOHN001&amp;quot;&lt;br /&gt;
*         &amp;quot;DEREK MAY&amp;quot; will become &amp;quot;DMAY001&amp;quot;&lt;br /&gt;
*         &amp;quot;TRUNKER M25&amp;quot;. TRUNKER M25 will become &amp;quot;TM25001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The process will attempt to find this user using the Site ID and the generated User ID above. If a record is found, the process will compare the user name in the XML file to the user name on the database. If different, the 3-digit id will be incremented by 1 and the process repeated until a matching EPOD_USER record is found, or one is not found for this ID.&lt;br /&gt;
&lt;br /&gt;
Check the EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG. If this is set to &amp;quot;N&amp;quot; and an EPOD_USER record is not found, the file should be rejected. An audit record of &amp;quot;User X Not Found&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
If one is not found and EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG is &amp;quot;Y&amp;quot;, the EPOD_USER record will be created and updated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ID || either &amp;quot;WAREHOUSE&amp;quot;, or as generated above&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_PASSWORD || set to the same value as the user ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_NAME || '''driver'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ADMIN || &amp;quot;N&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ACTIVE || &amp;quot;Y&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ACTIVITY_DATE || 0&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ACTIVITY_TIME || 0&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PASSWORD_VISIBLE_IND || 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The '''vehiclereg''' tag will be extracted from the '''manifest/header''' tag contents. If this is a non-zero value, C-ePOD will attempt to create the driver ID (if configured to do so).&lt;br /&gt;
&lt;br /&gt;
The process will attempt to find this vehicle using the Site ID and the Vehicle ID as the Vehicle Reg above. If a record is found, this will be stored by the process as EPOD_VEHICLE.&lt;br /&gt;
&lt;br /&gt;
Check the EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG. If this is set to &amp;quot;N&amp;quot; and an EPOD_VEHICLE record is not found, the file should be rejected. An audit record of &amp;quot;Vehicle X Not Found&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
If one is not found and EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG is &amp;quot;Y&amp;quot;, the EPOD_VEHICLE record will be created and updated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_VEHICLE_ID || '''vehiclereg'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_VEHICLE_REG || '''vehiclereg'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_DESCRIPTION || '''vehiclereg'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS || &amp;quot;Y&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Note}} Data created on these tables will be truncated. Comparisons to this data as described above with be truncated before comparison, in case the data is space-filled in the XML file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create a Load ===&lt;br /&gt;
A load will be attempted to be found using the following data, providing that at least a vehicle or user has been provided:&lt;br /&gt;
* EPL_SITE_ID - EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
* EPL_LOAD_START_PLANNED_DATE - '''deliverydate''' tag. Note that this value must be reformatted to YYYYMMDD format from DD-MM-YYYY format.&lt;br /&gt;
* EPL_VEHICLE_ID - EPOD_VEHICLE.EPL_VEHICLE_ID if one is present, otherwise this is not set as an parameter for the selection.&lt;br /&gt;
* EPL_USER_ID - EPOD_USER.EPOD_USER_ID if one is present, otherwise this is not set as an parameter for the selection.&lt;br /&gt;
* EPL_STATUS - &amp;quot;P&amp;quot; if the '''driver''' attribute is explicitly set to &amp;quot;WAREHOUSE&amp;quot;, otherwise this is not set as an parameter for the selection.&lt;br /&gt;
&lt;br /&gt;
If one is not found, a new load will be created on EPOD_LOAD as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID ||EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_ID || generated by the EPOD system.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_START_PLANNED_DATE || extracted from the '''deliverydate''' tag. Note that this value must be reformatted to YYYYMMDD format from DD-MM-YYYY format.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_START_PLANNED_TIME || extracted from the '''starttime''' tag. Note that this value must be reformatted (removing the embedded colon character and adding &amp;quot;0000&amp;quot; to the end. Note that if this tag is not present or blank, this field should be set to 6000000.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_END_PLANNED_DATE || as the Load Start Planned Date.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_END_PLANNED_TIME || 0&lt;br /&gt;
|-&lt;br /&gt;
|EPL_VEHICLE_ID || EPOD_VEHICLE.EPL_VEHICLE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ID || EPOD_VEHICLE.EPL_USER_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS || &amp;quot;P&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_INFORMATION || the ''number'' attribute of the '''manifest''' tag concatenated with the '''addinstruct''' tag, delimited by a dash.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a load is found and the manifest is ''not'' for desk collection (i.e. where the '''driver''' tag value is not explicitly &amp;quot;WAREHOUSE&amp;quot;), the status (EPL_STATUS) should be checked. If this value is not &amp;quot;P&amp;quot; then the file should be rejected. An audit record of &amp;quot;Load X at wrong status&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a load is found, the Load Information field EPL_LOAD_INFORMATION should be checked that it contains the text built from:&lt;br /&gt;
* the ''number'' attribute of the '''manifest''' tag concatenated with the '''addinstruct''' tag, delimited by a dash.&lt;br /&gt;
If it does not contain this, this should be added to the text already in the field, delimited by a newline character.&lt;br /&gt;
&lt;br /&gt;
The load (found or created) should be stored in an EPOD_LOAD object and updated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Jobs ===&lt;br /&gt;
The process will find and store the highest sequence of any jobs already attached to the EPOD_LOAD object, by checking the content of the EPOD_JOBS list on the EPOD_LOAD object. &lt;br /&gt;
&lt;br /&gt;
The process will extract the list of allowed order prefixes from the EPOD_XF_CONFIG.EPL_EXPORT_JOB_TYPES field. {{Note}} If this parameter is empty, all orders will be processed.&lt;br /&gt;
&lt;br /&gt;
The process will loop through all instances of the '''order''' tag in the ''manifest/data'' tag. Note that this is separated by a '''customer''' tag.&lt;br /&gt;
&lt;br /&gt;
Each '''order''' tag will be processed to create EPOD_JOB records, which will be added to the EPOD_LOAD.EPOD_JOBS list.&lt;br /&gt;
&lt;br /&gt;
The ''sopnumber'' attribute of the '''order''' tag will be extracted. if the attribute does not exist or has no value, this tag may be skipped. &lt;br /&gt;
&lt;br /&gt;
The trimmed attribute value will be checked to see whether the value begins with any of the allowed order prefixes. If it does not, then then the order will not be processed. &lt;br /&gt;
&lt;br /&gt;
A connection will be made to the MSA database for the order details. This will be achieved by opening a connection using the connection information stored in EPOD_XF_CONFIG.EPL_DB_CONNECTION. The connection should be attempted several times (for example, 3 times). If a connection cannot be made, then the file should be rejected. An audit record of &amp;quot;Order X: Cannot connect to MSA&amp;quot; shall be created. {{Note}} As this is a fundamental requirement of the process, should this fail, processing of this file ''and all others'' should be terminated for this run.&lt;br /&gt;
&lt;br /&gt;
The connection details will be specified in a connection string in EPOD_XF_CONFIG.EPL_DB_CONNECTION.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the following information has not yet been confirmed. &lt;br /&gt;
* Connection details (IP, user, password, port)&lt;br /&gt;
* Database type&lt;br /&gt;
* View name&lt;br /&gt;
&lt;br /&gt;
{{Note}} This MSA view is used from this point onwards for all details. Should the connection fail when attempting to retrieve subsequent records from the MSA view, the connection should be attempted to be re-established, again retrying several times, to ensure that this process is predominantly uninterrupted. &lt;br /&gt;
&lt;br /&gt;
In the instance where the connection fails, the file need not be rejected and moved to the Failure area - it can be left to be reprocessed immediately on the next run.&lt;br /&gt;
&lt;br /&gt;
When the connection is established, the details of the order will be retrieved from the MSA view using a standard SQL query, querying on the SOP Number.&lt;br /&gt;
&lt;br /&gt;
Should the view return no details, then the order will not be processed. An audit record of &amp;quot;Order X: No details in MSA&amp;quot; shall be created. The process will continue with the next order in the XML file.&lt;br /&gt;
&lt;br /&gt;
The Load will be checked to see whether the order already exists - the process will look for the order in EPOD_LOAD.EPOD_JOBS, where the job code (EPL_JOB_CODE_ is equal to the trimmed value of the '''sopnumber''' tag. If an order is found, an EPOD_JOB object will be created and set to the value of the job in the EPOD_LOAD.EPOD_JOBS EPOD_JOB object by reference.&lt;br /&gt;
&lt;br /&gt;
If the job found is already complete (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;), then the process will skip updating this order. An audit record of &amp;quot;Order X: already complete&amp;quot; shall be created. The process will continue with the next order in the XML file.&lt;br /&gt;
&lt;br /&gt;
If a job is not found, a new job will be created using the key values:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_LOAD.EPL_SITE_ID.&lt;br /&gt;
*	EPL_LOAD_ID - EPOD_LOAD.EPL_LOAD_ID.&lt;br /&gt;
*	EPL_JOB_TYPE - If the left 3 characters of the '''sopnumber''' tag are &amp;quot;RTN&amp;quot;, set this value to &amp;quot;C&amp;quot;, otherwise set this value to &amp;quot;D&amp;quot;.&lt;br /&gt;
*	EPL_JOB_CODE - the trimmed value of the '''sopnumber''' tag.&lt;br /&gt;
A value in EPL_JOB_ID will be generated for this job at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Job Group should be calculated as follows:&lt;br /&gt;
* If the EPL_JOB_TYPE is &amp;quot;C&amp;quot;, set to &amp;quot;COL&amp;quot;&lt;br /&gt;
* else if EPOD_LOAD.EPL_USER_ID = &amp;quot;WAREHOUSE&amp;quot;, set to &amp;quot;DESK&amp;quot;&lt;br /&gt;
* else set to &amp;quot;DEL&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The process will attempt to find this Job Group using:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_LOAD.EPL_SITE_ID.&lt;br /&gt;
*	EPL_JOB_GROUP - as set above.&lt;br /&gt;
If a record is found, this will be stored by the process as an EPOD_JOB_GROUPS DAL object.&lt;br /&gt;
&lt;br /&gt;
Check the EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG. If this is set to &amp;quot;N&amp;quot; and an EPOD_JOB_GROUPS record is not found, the file should be rejected. An audit record of &amp;quot;Job Group X Not Found&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
If one is not found and EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG is &amp;quot;Y&amp;quot;, the EPOD_JOB_GROUPS record will be created as follows:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
*	EPL_JOB_GROUP - as set above.&lt;br /&gt;
*	EPL_DESCRIPTION:&lt;br /&gt;
** If EPL_JOB_GROUP is &amp;quot;COL&amp;quot;, set to &amp;quot;Collections&amp;quot;.&lt;br /&gt;
** If EPL_JOB_GROUP is &amp;quot;DEL&amp;quot;, set to &amp;quot;Deliveries&amp;quot;.&lt;br /&gt;
** If EPL_JOB_GROUP is &amp;quot;DESK&amp;quot;, set to &amp;quot;Desk Collections&amp;quot;.&lt;br /&gt;
All flags will be set as their default values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The customer code, invoice address and contact information will be retrieved from the MSA view. The customer code will be checked as to whether it is already created in the system, by checking for an EPOD_CUSTOMER record using the keys:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
*	EPL_CUSTOMER_CODE - column CUSTNMBR from the MSA view.&lt;br /&gt;
&lt;br /&gt;
If this record does not exist, or a record does exist but the details are different, the record will be updated as follows:&lt;br /&gt;
If one is not found, a new load will be created on EPOD_LOAD as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUSTOMER_CODE || CUSTNMBR&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUSTOMER_NAME || CUSTNAME&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_1 || InvAdd1&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_2 || InvAdd2&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_3 || InvAdd3&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_4 || InvCity&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_5 || InvState&lt;br /&gt;
|-&lt;br /&gt;
|EPL_POSTCODE || InvZip&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The delivery address and contact information will then be compared to this Invoice address, comparing the following items:&lt;br /&gt;
*	EPL_CUSTOMER_NAME - DelName&lt;br /&gt;
*	EPL_ADDRESS_1 - DelAdd1&lt;br /&gt;
*	EPL_ADDRESS_2 - DelAdd2&lt;br /&gt;
*	EPL_ADDRESS_3 - DelAdd3&lt;br /&gt;
*	EPL_ADDRESS_4 - DelCity&lt;br /&gt;
*	EPL_ADDRESS_5 - DelState&lt;br /&gt;
*	EPL_POSTCODE - DelZip&lt;br /&gt;
&lt;br /&gt;
If any of the values are different, a Job Address will be created through an EPOD_JOB_ADDRESS DAL object, populated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_ID || EPOD_JOB.EPL_JOB_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_TYPE || EPOD_JOB.EPL_JOB_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|EPL_NAME || DelName&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_1 || DelAdd1&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_2 || DelAdd2&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_3 || DelAdd3&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_4 || DelCity&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_5 || DelState&lt;br /&gt;
|-&lt;br /&gt;
|EPL_POSTCODE || DelZip&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is not the first job being processed for the load, the process will check whether the job being created is not the first job being created for the customer code in this manifest. If this is not a subsequent job for this customer code, blank any stored values for the following fields:&lt;br /&gt;
* EPL_SEQUENCE&lt;br /&gt;
* EPL_LINKED_ID&lt;br /&gt;
&lt;br /&gt;
If this is not a subsequent job for this customer code, the process will then loop through existing jobs in EPOD_LOAD.EPOD_JOBS in reverse sequence, looking for any job that matches as follows:&lt;br /&gt;
* EPL_CUSTOMER_CODE is the same&lt;br /&gt;
* EPL_STATUS not &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;&lt;br /&gt;
* EPL_JOB_TYPE is the same as the job being created.&lt;br /&gt;
* The delivery address is the same as the job being created.&lt;br /&gt;
&lt;br /&gt;
If a match is found, check the value of the field EPL_LINKED_ID. If there is no value, set this to the value in the record's EPL_SEQUENCE field and update the object. The process will then store the values in the following fields:&lt;br /&gt;
* EPL_SEQUENCE - EPL_SEQUENCE of the job found&lt;br /&gt;
* EPL_LINKED_ID - EPL_LINKED_ID of the job found&lt;br /&gt;
&lt;br /&gt;
The EPOD_JOB object will then be updated with the values as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_GROUP	|| The calculated Job Group above&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_INSTRUCTION	|| Order comments (OrdComm) and Delivery Instructions (DelIns) concatenated together with a space separator.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS	|| &amp;quot;P&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUSTOMER_CODE	|| The customer code (CUSTNMBR).&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SEQUENCE	|| Stored value of EPL_SEQUENCE if there is one, or the maximum value of sequences of jobs on this load, plus 1.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_START_PLANNED_DATE	|| ReqShipDate&lt;br /&gt;
|-&lt;br /&gt;
|EPL_START_PLANNED_TIME	|| StartTime if populated, else 0600&lt;br /&gt;
|-&lt;br /&gt;
|EPL_END_PLANNED_DATE	|| ReqShipDate&lt;br /&gt;
|-&lt;br /&gt;
|EPL_END_PLANNED_TIME	|| DelTime if populated, else FinishTime if populated, else 1400.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_CODE	|| the trimmed value of the '''sopnumber''' tag.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUST_REF	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_OFFICE_INSTRUCTION	|| tcsFLST_Route&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SO_NUMBER	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ORDER_DATE	|| CREATDDT&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SALES_CONTACT	|| UserID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_OWNER_NAME	|| The sales territory (SALSTERR)&lt;br /&gt;
|-&lt;br /&gt;
|EPL_EXT_REF	|| The manifest (extracted from the ''number'' attribute of the '''manifest''' tag)&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ACCOUNT	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LINKED_ID	|| Stored value of EPL_LINKED_ID if there is one.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_TIMEZONE	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_LOCATION	|| Originating Depot&lt;br /&gt;
|-&lt;br /&gt;
|EPL_TTM_STOP_NUMBER	|| Set to the value in EPL_SEQUENCE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will then store the following:&lt;br /&gt;
* EPL_CUSTOMER_CODE - the Customer code last processed in this manifest file.&lt;br /&gt;
* EPL_SEQUENCE - EPL_SEQUENCE of the job created&lt;br /&gt;
* EPL_LINKED_ID - EPL_LINKED_ID of the job created&lt;br /&gt;
&lt;br /&gt;
The job will be updated and saved at this point.&lt;br /&gt;
&lt;br /&gt;
The Job ID of the job created will be added to a comma-delimited string of jobs processed for this manifest.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Products ===&lt;br /&gt;
The process will loop through each record from MSA view, in order to create the product lines. {{Note}} All lines in the MSA view detail product information, including the first line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The value in UOFM field of the MSA view will be looked up against the EPOD_REASON_CODE table matching the following parameters:&lt;br /&gt;
* EPL_SITE_ID - EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
* EPL_REASON_CODE - UOFM&lt;br /&gt;
&lt;br /&gt;
If a record is not found, create an EPOD_PRODUCT DAL object with values set as follows:&lt;br /&gt;
* EPL_SITE_ID - EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
* EPL_REASON_CODE - UOFM&lt;br /&gt;
* EPL_DESCRIPTION - UOFM&lt;br /&gt;
* EPL_CONV_TYPE - &amp;quot;MULTIPLY&amp;quot;&lt;br /&gt;
* EPL_CONV_VALUE - 1000&lt;br /&gt;
* EPL_CONV_CODE - &amp;quot;&amp;quot;&lt;br /&gt;
Update this UOM code.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;EXCLUDE&amp;quot;, this product will not be added - the process will move to the next record in the MSA view.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;MULTIPLY&amp;quot;, multiply the value in the QUANTITY field of the MSA view by the value stored in EPL_CONV_VALUE and store as the quantity.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;ROUND&amp;quot;, round the value in the QUANTITY field of the MSA view by the value stored in EPL_CONV_VALUE and store as the quantity.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;DEFAULT&amp;quot;, store the value in the QUANTITY field of the MSA view as the quantity.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_CODE has a valid value, store the EPL_CONV_CODE as the UOM.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_CODE is blank or null, store the UOFM field from the MSA view as the UOM.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will check to see if a product already exists on the job by checking the EPOD_JOB.EPOD_PRODUCTS list for an object with the following values:&lt;br /&gt;
* EPL_SITE_ID - EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
* EPL_JOB_ID - EPOD_JOB.EPL_JOB_ID&lt;br /&gt;
* EPL_CONTAINER_ID - &amp;quot;000000000000000&amp;quot; (15 zeroes in a string, denoting a loose product)&lt;br /&gt;
* EPL_PRODUCT_CODE - ITEMNMBR &lt;br /&gt;
&lt;br /&gt;
If one is not found, an EPOD_PRODUCT object will be created and added to the EPOD_JOB.EPOD_PRODUCTS list.&lt;br /&gt;
&lt;br /&gt;
If one is found or created above, an EPOD_PRODUCT object will be pointed to this object by reference.&lt;br /&gt;
&lt;br /&gt;
The EPOD_PRODUCT object (found or created) will have the fields updated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_ID || EPOD_JOB.EPL_JOB_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CONTAINER_ID || &amp;quot;000000000000000&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_CODE || ITEMNMBR&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SEQUENCE || 1&lt;br /&gt;
|-&lt;br /&gt;
|EPL_DESCRIPTION || ITEMDESC, truncated to 40 characters&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_QTY_PLANNED || The quantity calculated and stored above&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_QTY_CASE || SellPack if populated and numeric, else 0.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS || &amp;quot;P&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_WEIGHT || ITEMSHWT&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUST_REF || CustordNo&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ITEM_TYPE ||&lt;br /&gt;
|-&lt;br /&gt;
|EPL_UNIT_TYPE || The UOM stored above.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_DESCRIPTION_LONG || ITEMDESC and ebbFLTX_Sales_Comments concatenated with CR/LF characters.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_QTY_ORDERED || Set to the same value as EPL_PRODUCT_QTY_PLANNED&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The product record on EPOD_PRODUCT will then be updated.&lt;br /&gt;
&lt;br /&gt;
The Product Code of the product created will be added to a comma-delimited string of products processed for this job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Remove Products not on the Job ===&lt;br /&gt;
All subsequent records on the MSA view will be processed in this manner and stored on the job.&lt;br /&gt;
&lt;br /&gt;
When all products are processed, the process will check through all products on the job and compare to the list of products processed on this manifest for this job. Any products on the job but not in the manifest will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If, after this, there are no products on the job, the job will be deleted. An audit record of &amp;quot;No Products on Order X - order deleted&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Remove Jobs not on the Load for that Manifest ===&lt;br /&gt;
All subsequent order tags in the Manifest will be processed in this manner and stored on the load.&lt;br /&gt;
&lt;br /&gt;
When all orders on the manifest are processed, the process will check through all jobs on the load (with that Manifest number, as stored in EPL_EXT_REF) and compare to the list of jobs processed on this manifest. Any jobs for this manifest on the load but not in the manifest will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If, after this, there are no jobs on the load, the load will be deleted. An audit record of &amp;quot;No Jobs on Load X - load deleted&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing the new EBB paper interface can be configured and works as expected.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=A system configured as EBB Paper.&lt;br /&gt;
|Objective=To test that: UOMs may be entered with conversion types; the EBB Paper interface may be configured and; the EBB paper interface works as expected.&lt;br /&gt;
}} {{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Admin&lt;br /&gt;
|Notes=&amp;amp;nbsp;&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new Interface type as expected for EBB Paper.&lt;br /&gt;
|Result=The new EBB Paper interface can be configured and edited as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new reason code. Select type &amp;quot;UOM&amp;quot;.&lt;br /&gt;
|Result=Type UOM can be selected from the drop-down list. The Conversion fields are displayed and defaulted as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select Conversion Type &amp;quot;Round&amp;quot; and &amp;quot;Multiply&amp;quot;.&lt;br /&gt;
|Result=A Value may be entered.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Save the code. Enter another code. Select other Conversion Types.&lt;br /&gt;
|Result=A Value may not be entered.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Save the code. Enter another code with an Xref code and conversion type &amp;quot;As Received&amp;quot;.&lt;br /&gt;
|Result=The XRef code is entered and saved.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Find all UOM codes. &lt;br /&gt;
|Result=UOM can be selected as a filter element. All UOM codes are displayed. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Edit UOM codes.&lt;br /&gt;
|Result=The codes are displayed as they were entered. The Conversion fields are displayed as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Interface&lt;br /&gt;
|Notes=Set up the site to NOT create standing data. Configure the interface for FTP file transfer. Configure the MSA connection to be incorrect.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create valid manifest files in the configured FTP area, one named &amp;quot;Manifest_test1.xml&amp;quot; and one named &amp;quot;incorrect.xml&amp;quot;. Both should have a user that does not match an existing vehicle. Run the import process.&lt;br /&gt;
|Result=Only the manifest matching the filename is processed. This is rejected for an invalid user. The file is placed in a Failed directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Change the interface configuration to FILE transfer type. Create valid manifest files in the configured FILE area, one named &amp;quot;Manifest_test2.xml&amp;quot; and one named &amp;quot;incorrect.xml&amp;quot;. Both should have a vehicle that does not match an existing vehicle, but with a valid user. Run the import process.&lt;br /&gt;
|Result=Only the manifest matching the filename is processed. This is rejected for an invalid vehicle. The file is placed in a Failed directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Process a manifest (any transfer method) with a valid user and vehicle, with job groups not created.&lt;br /&gt;
|Result=The file is rejected for invalid job group. The file is placed in a Failed directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Configure the system to create standing data. Create two valid (but different) manifests, with a user and vehicle that does not match any existing data. Ensure there is a valid job with at least one valid product.&lt;br /&gt;
|Result=The first file is processed and rejected due to being unable to connect to MSA. The second file is not processed at all.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Configure the interface with the correct MSA view connection details. Process the manifests above again.&lt;br /&gt;
|Result=The files are processed without errors. The Vehicle is created. The Users is created. The Job Group is created. The Customer is created. The Load is created. The Job is created. The products are created. The file is audited as processed successfully. The file is placed in a Success directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest almost identical to the last manifest, but with different Load start time, Job Start time, product quantities. Ensure the invoice address is changed. Ensure that there are comments on the Manifest. Process the manifest.&lt;br /&gt;
|Result=The load, job and products are updated. The manifest comments are appended to the Load Instructions. The invoice (customer) address is updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with orders with one valid sopnumber, and all others as invalid SOP numbers. Ensure the valid order is not for the same customer as the prior manifest. Process the manifest.&lt;br /&gt;
|Result=A job is created on the load for the one valid order. All others are not processed. The job is sequenced after all others&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with an order with a valid INV sopnumber. Ensure the order is for the same customer as the first manifest. Process the manifest.&lt;br /&gt;
|Result=A job is created on the load for the order. The job is sequenced and linked to the matching job from the first manifest.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with orders with a valid sopnumber with the same customer code as the last manifest. Ensure two are RTN jobs and two are INV jobs. Process the manifest.&lt;br /&gt;
|Result=Jobs are created on the load for the orders. The jobs are correctly identified as Collection and Delivery jobs, with the correct Job Group. The jobs are sequenced after any existing jobs on the load. The RTN jobs will have the same sequence and linked ID. The INV jobs will have the same sequence and linked ID as the existing INV job on the load for this customer.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with orders with a valid sopnumber with the same customer code as the last manifest. Ensure two are RTN jobs and two are INV jobs. Ensure the delivery address is different to the invoice address. Process the manifest.&lt;br /&gt;
|Result=Jobs are created on the load for the orders. The jobs are correctly identified as Collection and Delivery jobs, with the correct Job Group. The jobs are sequenced after any existing jobs on the load. The RTN jobs will have the same sequence and linked ID. The INV jobs will have the same sequence and linked ID. No jobs will be linked to existing jobs on the manifest. The Job Address is created for these loads.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for a different date, vehicle and user, with orders with valid sopnumbers, for many customers. Ensure that they have a mix of UOMs configured with Round, Multiply, As Received, Exclude and Xref Code conversions, as well as a product without a configured UOM.&lt;br /&gt;
|Result=The jobs and products are created as expected. The Exclude product is not created. The quantities are set as per the conversion type rules. The unknown UOM is created with default values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete or cancel the load created. Process the same manifest file.&lt;br /&gt;
|Result=The manifest is rejected for invalid load status.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Process a DESK COLLECT manifest with a user of &amp;quot;WAREHOUSE&amp;quot;&lt;br /&gt;
|Result=A load is created. The user is created.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete or cancel the load created. Process another DESK COLLECT manifest file.&lt;br /&gt;
|Result=A new load is created. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Process a manifest with a job with no valid products.&lt;br /&gt;
|Result=The file is processed successfully. Audit history is recorded as the job having no products, and the load having no jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[[REQ 343463 EBB Paper Solution Design]]&lt;br /&gt;
|RefV1=2.0&lt;br /&gt;
|RefDate1=01/08/2017&lt;br /&gt;
|EREQ=0&lt;br /&gt;
|EEST=0&lt;br /&gt;
|EFS=2.5&lt;br /&gt;
|ETS=0&lt;br /&gt;
|EDEV=15.5&lt;br /&gt;
|ESTT=3.50&lt;br /&gt;
|EIMP=1.25&lt;br /&gt;
|EPM=1.5&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=5&lt;br /&gt;
|ST=0.0&lt;br /&gt;
|IMP=0.0&lt;br /&gt;
|PM=0.0&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|FOC=N&lt;br /&gt;
|Rev1=Matt Turner&lt;br /&gt;
|Rev1Title=OBSL Account Manager&lt;br /&gt;
|Rev2=Rebecca Elliott&lt;br /&gt;
|Rev2Title=EBB Paper Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344273_SCR-343463-01_EBB_Paper_Bespoke_Import_Interface&amp;diff=4890</id>
		<title>FS 344273 SCR-343463-01 EBB Paper Bespoke Import Interface</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_344273_SCR-343463-01_EBB_Paper_Bespoke_Import_Interface&amp;diff=4890"/>
		<updated>2017-08-10T09:49:33Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Review and Issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|EBB}}&lt;br /&gt;
{{#vardefine:ClientName|EBB Paper}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|Bespoke Import Interface}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|10th August 2017}}&lt;br /&gt;
{{#vardefine:Reference|344273 SCR-343463-01}}&lt;br /&gt;
{{#vardefine:Year|2017}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
SCR-343463-01: Bespoke Import Interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OBS Logistics have been requested to write the interface in order to speed up the delivery of the project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The loads are interfaced from MSA in a custom XML format in a flat-file, after the routes are planned. A button is pressed when the manifest is finished planning to create this file.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The manifests are used for picking. If additional orders are added to the vehicle (add-ons), the orders are placed on a separate manifest, for the same vehicle on the same day. This is because adding orders to an existing manifest (which is possible) will confuse the pickers and potentially result in double picks. This occurs quite frequently on radial deliveries.&lt;br /&gt;
&lt;br /&gt;
This file does not contain all the information required to create the jobs. Predominantly, address information and product case details are missing from this interface file. The remaining information is to be accessed directly from a view on the ERP system, running a SQL Server database.&lt;br /&gt;
&lt;br /&gt;
== Solution Overview ==&lt;br /&gt;
The interface created will be triggered by the receipt of the TMS XML file. The processing of the jobs on this file will retrieve the information on the orders from a view available in the ERP, through direct connection to this database. &lt;br /&gt;
&lt;br /&gt;
{{Note}} The C-ePOD system will be hosted by OBS, whilst the ERP is hosted by the customer. This interface will need to connect to this ERP to access the view to get the job details. There is a technical requirement to have the two servers connected, which will require action by OBS technical services and the customer in collaboration.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A scheduled import process will be created on the system, running at a timed interval.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There will be multiple manifests sent for the same vehicle on the same day. These must be combined into a single manifest on C-ePOD. {{Note}} In order for the interface to successfully combine manifests, it is assumed that there will be one load required per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Manifests (that create Loads in C-ePOD) will be allocated to a vehicle and/or driver. This allows the loads to be created and allocated to a driver for completion. Note however that, once created, the {{#var:System}} Admin system (Load or User screens) may be used to change allocation of vehicles and drivers on a load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface will create loads, one per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
The system will be configured to create standing data from the received import information, such as:&lt;br /&gt;
* Drivers&lt;br /&gt;
* Customers (Invoice Addresses)&lt;br /&gt;
* Vehicles&lt;br /&gt;
As noted above, it is expected that this data will be created at implementation.&lt;br /&gt;
&lt;br /&gt;
When C-ePOD receives an inbound file from the customer, drivers and vehicles will be created as part of this interface, if they do not exist. The driver ID will be created as the first character of the first name, and up to the first 4 characters of the surname, with a 3-digit unique identifier added to them.&lt;br /&gt;
 &lt;br /&gt;
For example:&lt;br /&gt;
*         &amp;quot;DAVID EASTMAN&amp;quot; will become &amp;quot;DEAST001&amp;quot;&lt;br /&gt;
*         &amp;quot;SMITH JOHN&amp;quot; will become &amp;quot;SJOHN001&amp;quot;&lt;br /&gt;
*         &amp;quot;DEREK MAY&amp;quot; will become &amp;quot;DMAY001&amp;quot;&lt;br /&gt;
*         &amp;quot;TRUNKER M25&amp;quot;. TRUNKER M25 will become &amp;quot;TM25001&amp;quot;&lt;br /&gt;
Note that where other drivers have similar names, the generated ID will increment the unique identifier. So:&lt;br /&gt;
*         &amp;quot;DIANE EASTMAN&amp;quot; will become &amp;quot;DEAST002&amp;quot;&lt;br /&gt;
*         &amp;quot;SANDERSON JOHN&amp;quot; will become &amp;quot;SJOHN002&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
The password will be defaulted to the user name.&lt;br /&gt;
&lt;br /&gt;
It is noted that EBB will tidy up the list of drivers before the implementation&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sites will be created for each depot, following the encoding within the customer systems:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!GP Site ID	!!GP ADI Site ID	!!Fleet name&lt;br /&gt;
|-&lt;br /&gt;
|03 CHARLTO	||903 ADI	||Thurrock&lt;br /&gt;
|-&lt;br /&gt;
|04 FARNBOR	||904 ADI	||Farnborough&lt;br /&gt;
|-&lt;br /&gt;
|05 WATFORD	||905 ADI	||Watford&lt;br /&gt;
|-&lt;br /&gt;
|09 YEOVIL	||909 ADI	||BRISTOL&lt;br /&gt;
|-&lt;br /&gt;
|10 BIRMING	||910 ADI	||Birmingham&lt;br /&gt;
|-&lt;br /&gt;
|11 MANCHES	||911 ADI	||Manchester&lt;br /&gt;
|-&lt;br /&gt;
|12 SHEFFIE	||912 ADI	||Sheffield&lt;br /&gt;
|-&lt;br /&gt;
|13 NEWCAST	||913 ADI	||Newcastle&lt;br /&gt;
|-&lt;br /&gt;
|14 GLASGOW	||914 ADI	||Glasgow&lt;br /&gt;
|-&lt;br /&gt;
|31 FELIXST	||931 ADI	||Felixstowe&lt;br /&gt;
|-&lt;br /&gt;
|32 MAREXPO	||932 ADI	||Marexport&lt;br /&gt;
|}&lt;br /&gt;
{{Note}} The site is taken from the Originating Depot. The ADI site ID will be considered to be the GP site ID in this interface. Any manifests in the file for sites not in this list will not have loads or jobs created for them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface must identify the Site (the executing depot) and the Owner (the originator). &lt;br /&gt;
* The owner is considered the Sales Territory (column SALSTERR in the MSA view) &lt;br /&gt;
* The executing depot is the depot property on the '''manifest''' tag in the XML file.&lt;br /&gt;
&lt;br /&gt;
It is noted that the following will be Owners only and will not be operators:&lt;br /&gt;
* 08 PRINTMT&lt;br /&gt;
* 20 EBBOFFI&lt;br /&gt;
* 30 GLOSSOP&lt;br /&gt;
&lt;br /&gt;
The following columns are also noted from the MSA view:&lt;br /&gt;
*         DefaultSiteID - the final delivery depot&lt;br /&gt;
*         Originating Depot - the depot from which the product is sourced. {{Note}} The ''depot'' attribute of the '''order''' tag in the TMS XML file also identifies the originating depot. For example, if this contains &amp;quot;\03&amp;quot; this identifies &amp;quot;03 CHARLTON&amp;quot; as the depot (and THURROCK as the fleet).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The manifest on which a job is received will be stored against the job in C-ePOD, as well as any of the other customer references. This will be used by the interface to determine if the manifest has been received before. If this is the case, and the manifest has been modified (i.e. orders or products removed or added), this will be used by the system to determine whether jobs are to be added to the created load for this vehicle and day, or whether the jobs will be removed (deleted). Products not on the jobs updated will be removed, and new products added.&lt;br /&gt;
&lt;br /&gt;
The jobs will be placed on the Load in the order in which they are received in the manifest file. If a further manifest is received for this vehicle, the jobs will be added to the end of the manifest. A hard sequence will be generated for the jobs on the manifest.&lt;br /&gt;
&lt;br /&gt;
In the interface, orders for the same customer code will be linked together and consolidated on the device, ensuring that only one delivery instruction is present, although both orders will be maintained.&lt;br /&gt;
&lt;br /&gt;
The interface will consolidate jobs together if:&lt;br /&gt;
*         The manifest on which the job is received is determined to be on the same Load as other jobs.&lt;br /&gt;
*         The job has the same customer and delivery address as another job on the load.&lt;br /&gt;
*         The other jobs are not completed or cancelled.&lt;br /&gt;
*         They are the same type i.e. deliveries can consolidate with deliveries and collections with collections only.&lt;br /&gt;
Note that the consolidation process will not use the delivery time of the orders when determining whether to consolidate jobs.&lt;br /&gt;
&lt;br /&gt;
Note also that the driver will have the ability to manually consolidate and deconsolidate jobs on the device when executing the load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are many different types of orders. The type is identified through the alpha prefix against the order. The main types are below:&lt;br /&gt;
* INV - Delivery order&lt;br /&gt;
* CAL - Call-off. Considered to be the same as an INV order.&lt;br /&gt;
* RTN - Collection from customer.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only these order types will be uploaded to the C-ePOD system as jobs. All other types will be excluded when processing the files. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Any manifests marked as TRUNK (in the '''trailer''' tag of the TMS XML file) will also not be processed.&lt;br /&gt;
&lt;br /&gt;
Desk collections will be interfaced to C-ePOD on a separate manifest per depot, but with a driver of &amp;quot;WAREHOUSE&amp;quot;. {{Note}} The view MSA contains a column that identifies whether this is a customer collection (column CustColl), but this is unreliable.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Job Instructions should be populated with Order comments (OrdComm) and Delivery Instructions (DelIns) concatenated together.&lt;br /&gt;
&lt;br /&gt;
When receiving jobs through the interface, the invoice (customer) address will be updated, if this has changed. EBB Paper have confirmed that the Invoice address changing is as expected. It has been confirmed that any previous jobs with this invoice (customer) address will from that point show the new invoice address, and this is acceptable to EBB Paper.&lt;br /&gt;
&lt;br /&gt;
Planned delivery times will be maintained on each job created. &lt;br /&gt;
&lt;br /&gt;
There are essentially 2 types of order:&lt;br /&gt;
* A non-timed delivery will have a cut off of 14:00&lt;br /&gt;
* Timed Delivery&lt;br /&gt;
&lt;br /&gt;
{{Note}} Development work is required with GP to allow the EBB Paper sales team to maintain times on the order. This will be an EBB Paper task to complete.&lt;br /&gt;
&lt;br /&gt;
The start and end planned dates and times will be populated from the values in the following MSA view columns:&lt;br /&gt;
*	Start Planned Date - ReqShipDate&lt;br /&gt;
*	Start Planned Time - StartTime if populated, else 0600&lt;br /&gt;
*	End Planned Date - ReqShipDate&lt;br /&gt;
*	End Planned Time - DelTime if populated, else FinishTime if populated, else 1400.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs will be set with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be Job Group configurations for the different job types, as they will have different execution processes on the mobile devices:&lt;br /&gt;
* Radial Collection/Delivery&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Desk Collect&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature will ''not'' be enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
For all jobs groups, it is expected that the following will also be configured:&lt;br /&gt;
* No Job Photo&lt;br /&gt;
* EBB Paper POD format&lt;br /&gt;
* Terms and Conditions is expected to be set to:&lt;br /&gt;
** Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The products will be created on each job created with the details taken from the ERP. The details expected to be received are:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description - stored as a truncated value&lt;br /&gt;
* FSC number (optional) - stored with the full product description in the long description field.&lt;br /&gt;
* Pack Size&lt;br /&gt;
* UOM&lt;br /&gt;
* Weight&lt;br /&gt;
* Quantity&lt;br /&gt;
&lt;br /&gt;
The pack size of the product will be taken from the ERP view in the interface. This will come from Sell Pack in the interface. It is noted that there is also a Purch Pack field, and it is confirmed that C-ePOD has no place to store this information.&lt;br /&gt;
&lt;br /&gt;
UOFM is the defined unit of measure of the product being delivered. There are multiple products UOMs that require the quantity to be decimal (for example, Weight (TONNES), Length (LINEAR METRES), Area (METRES SQUARED). In order for this to be achieved, the C-ePOD import interface for this system will multiply the quantities by a factor (for example, SHEETS UOM is in 1000's, so quantity 1.4 is actually 1400 sheets). &lt;br /&gt;
&lt;br /&gt;
The following is a list of the UOFMs known at this time and the proposals to handle them:&lt;br /&gt;
*	1 - always 1 - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	1000 - quantity will be multiplied by 1000.&lt;br /&gt;
*	BOTTLE - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	BOX - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	CHARGE - Excluded - this is a delivery charge. No line will be created.&lt;br /&gt;
*	EACH - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ENVS - Envelopes. Quantity will be multiplied by 1000. &lt;br /&gt;
*	MISC - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ROLL - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	SETS - Multi-part paper. Quantity will be multiplied by 1000.&lt;br /&gt;
*	SHEETS - quantity will be multiplied by 1000&lt;br /&gt;
*	TONNE - quantity will be multiplied by 1000 and the UOM set to &amp;quot;KGS&amp;quot;.&lt;br /&gt;
*	METRES SQUARED - quantity will be multiplied by 1000.&lt;br /&gt;
*	LINEAR METRES - quantity will be multiplied by 1000.&lt;br /&gt;
&lt;br /&gt;
There are then essentially 4 rules:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!RULE	!!UOMS&lt;br /&gt;
|-&lt;br /&gt;
|Multiply by 1000 	||1000, ENVS, SETS, SHEETS, METRES SQUARED, LINEAR METRES&lt;br /&gt;
|-&lt;br /&gt;
|Round up to nearest integer value	||1, BOTTLE, BOX, EACH, MISC, ROLL&lt;br /&gt;
|-&lt;br /&gt;
|Exclude	||CHARGE&lt;br /&gt;
|-&lt;br /&gt;
|Multiply by 1000 and change to KGS	||TONNE&lt;br /&gt;
|}&lt;br /&gt;
Any not on the list would follow the first rule (i.e. multiply quantity by 1000).&lt;br /&gt;
&lt;br /&gt;
Note that the above method has been confirmed by the customer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This process will create jobs as part of loads on the interface. It is possible that additional information may need to be communicated to the driver whilst out in the field. In this case, the WEBFLEET messaging function will be used by the operation. Furthermore, it is noted that additional jobs may be created in C-ePOD Admin for ad-hoc collections. For example, adding a job at the end of the shift (load) to go to a customer and pick up some empty pallets. {{Note}} This job will exist solely in C-ePOD, as the jobs are not being interfaced back to GP when complete. EBB Paper must take care when adding jobs of this type, ensuring that any subsequent actions required for these jobs is handled (for example, invoicing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope ==&lt;br /&gt;
This change will be applied to system version 3.X.&lt;br /&gt;
&lt;br /&gt;
This change includes up to 2 days relating to the external MSA view, for set-up and testing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
A new Interface ID of &amp;quot;EBB&amp;quot;, description &amp;quot;EBB&amp;quot;, will be added to the EPOD_LIST_ITEMS for XF Interface IDs.&lt;br /&gt;
&lt;br /&gt;
A new Code Type of &amp;quot;UOM&amp;quot;, description &amp;quot;UOMs&amp;quot;, will be added to the EPOD_LIST_ITEMS for Reason Codes.&lt;br /&gt;
&lt;br /&gt;
A new EPOD_LISTS ID must be configured for Code Conversion Types, with the following List Items on EPOD_LIST_ITEMS, with Description and Value set as follows:&lt;br /&gt;
*   Value &amp;quot;MULTIPLY&amp;quot;, Description &amp;quot;Multiply&amp;quot;. This is the default value for EBB Paper.&lt;br /&gt;
*   Value &amp;quot;ROUND&amp;quot;, description &amp;quot;Round&amp;quot;.&lt;br /&gt;
*   Value &amp;quot;EXCLUDE&amp;quot;, description &amp;quot;Exclude&amp;quot;.&lt;br /&gt;
*   Value &amp;quot;DEFAULT&amp;quot;, description &amp;quot;As Received&amp;quot;. This is the default value for all other customers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sites for each depot will be configured. Each site will be set up with EPL_EXT_FLEET set to the fleet name, as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Site ID	!!Fleet&lt;br /&gt;
|-&lt;br /&gt;
|03 CHARLTO	||THURROCK&lt;br /&gt;
|-&lt;br /&gt;
|04 FARNBOR	||FARNBOROUGH&lt;br /&gt;
|-&lt;br /&gt;
|05 WATFORD	||WATFORD&lt;br /&gt;
|-&lt;br /&gt;
|09 YEOVIL	||BRISTOL&lt;br /&gt;
|-&lt;br /&gt;
|10 BIRMING	||BIRMINGHAM&lt;br /&gt;
|-&lt;br /&gt;
|11 MANCHES	||MANCHESTER&lt;br /&gt;
|-&lt;br /&gt;
|12 SHEFFIE	||SHEFFIELD&lt;br /&gt;
|-&lt;br /&gt;
|13 NEWCAST	||NEWCASTLE&lt;br /&gt;
|-&lt;br /&gt;
|14 GLASGOW	||GLASGOW&lt;br /&gt;
|-&lt;br /&gt;
|31 FELIXST	||FELIXSTOWE&lt;br /&gt;
|-&lt;br /&gt;
|32 MAREXPO	||MAREXPORT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_Site1.png|''Site Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A new Import Interface configuration will be set up. This is required only for one of the sites, expected to be the first site &amp;quot;03 CHARLTO&amp;quot;:&lt;br /&gt;
*	EPL_XF_CONFIG_ID - &amp;quot;03 CHARLTO&amp;quot;&lt;br /&gt;
*	EPL_DESCRIPTION - As required&lt;br /&gt;
*	EPL_XF_TYPE - &amp;quot;FTP&amp;quot; or &amp;quot;FILE&amp;quot;&lt;br /&gt;
*	EPL_XF_DESTINATION - remote FTP server and path for FTP, local file path for FILE&lt;br /&gt;
*	EPL_XF_ID - &amp;quot;EBB&amp;quot;&lt;br /&gt;
*	EPL_WEB_USER - FTP user for FTP&lt;br /&gt;
*	EPL_WEB_PASSWORD - FTP password for FTP&lt;br /&gt;
*	EPL_DB_CONNECTION  - MSA database connection information e.g. &amp;quot;Data Source=[SERVER];Initial Catalog=[DB_NAME];User Id=[USER];Password=[PASSWORD];&amp;quot;&lt;br /&gt;
*	EPL_XF_DIRECTION - &amp;quot;I&amp;quot; - Import type&lt;br /&gt;
*	EPL_EXPORT_JOB_TYPES - &amp;quot;INV|CAL|RTN&amp;quot; - list of Order Types to be processed, pipe-delimited. Up to 5 allowed&lt;br /&gt;
*	EPL_FILENAME - Filename to match when picking up files. Expected to be &amp;quot;Manifest_*.xml&amp;quot;.&lt;br /&gt;
*	EPL_EMAIL_ERRORS - email address for file processing error notifications&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_XFConfig1.png|''New EBB Import Configuration''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A generic TTM Export configuration will be created (as ID &amp;quot;TTM&amp;quot;), as well as a specific TTM Export configuration for the first site (e.g. &amp;quot;03 CHARLTO&amp;quot;). The configuration of both will be identical apart from the Config ID.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_XFConfig2.png|''TTM Export Sample Configuration''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Interfaces for each site will be set as follows:&lt;br /&gt;
* For Site ID &amp;quot;03 CHARLTO&amp;quot;, set the XF Config ID to &amp;quot;03 CHARLTO&amp;quot;.&lt;br /&gt;
* For all other sites, set to &amp;quot;TTM&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be Job Group configurations for the different job types, as they will have different execution processes on the mobile devices.&lt;br /&gt;
&lt;br /&gt;
Job Groups will be created as follows for each site above:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Job Group	!!Description&lt;br /&gt;
|-&lt;br /&gt;
|COL    || Radial Collection&lt;br /&gt;
|-&lt;br /&gt;
|DEL    || Radial Delivery&lt;br /&gt;
|-&lt;br /&gt;
|DESK    || Desk Collections&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_JobGroups1.png|''Job Groups Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The set-up of each job group will include the following:&lt;br /&gt;
* Radial Collection/Delivery&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Desk Collect&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature will ''not'' be enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
&lt;br /&gt;
For all jobs groups, it is expected that the following will also be configured:&lt;br /&gt;
* No Job Photo&lt;br /&gt;
* EBB Paper POD format&lt;br /&gt;
* Terms and Conditions is expected to be set to:&lt;br /&gt;
** Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All of the UOMs required by the customer should be configured on the Admin Codes Maintenance screen for all sites. The values known at this time are as follows, with the Conversion settings required for each:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Conversion Type	!! Value	!! Code	!! UOMS&lt;br /&gt;
|-&lt;br /&gt;
|Multiply	|| 1000	||&amp;amp;nbsp;	|| 1000, ENVS, SETS, SHEETS, METRES SQUARED, LINEAR METRES&lt;br /&gt;
|-&lt;br /&gt;
|Round 	|| 1	||&amp;amp;nbsp;	|| 1, BOTTLE, BOX, EACH, MISC, ROLL&lt;br /&gt;
|-&lt;br /&gt;
|Exclude	||&amp;amp;nbsp;	||&amp;amp;nbsp;	|| CHARGE&lt;br /&gt;
|-&lt;br /&gt;
|Multiply 	|| 1000	|| KGS	|| TONNE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_Codes1.png|''Codes Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== Database &amp;amp; Data Access Layer ==&lt;br /&gt;
The following fields will be added to the Job table EPOD_REASON_CODE:&lt;br /&gt;
*   EPL_CONV_TYPE - nvarchar(10)&lt;br /&gt;
*   EPL_CONV_VALUE - float&lt;br /&gt;
*   EPL_CONV_CODE - nvarchar(20)&lt;br /&gt;
&lt;br /&gt;
These fields will be added to all stored procedures in the database that require them.&lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required on the device.&lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required to be set on codes imported through the standard XML import (flat file or webservice). &lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required to be contained within the Export.&lt;br /&gt;
&lt;br /&gt;
These fields are ''not'' required to be used when filtering data for selection.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following fields will be added to the Job table EPOD_XF_CONFIG:&lt;br /&gt;
*   EPL_DB_CONNECTION - nvarchar(255)&lt;br /&gt;
&lt;br /&gt;
This field will be added to all stored procedures in the database that require it.&lt;br /&gt;
&lt;br /&gt;
This field is ''not'' required on the device.&lt;br /&gt;
&lt;br /&gt;
This field is ''not'' required to be used when filtering data for selection.&lt;br /&gt;
&lt;br /&gt;
{{Note}} All DAL objects that link to XF_CONFIG may also require change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The EPOD_SETUP stored procedure will be modified for the new EPOD_LISTS and EPOD_LIST_ITEMS values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Admin ==&lt;br /&gt;
=== Codes Maintenance Screen ===&lt;br /&gt;
The Codes Maintenance screen (reason_code.aspx) will be modified to support UOMs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_Codes1.png|''Codes Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The '''Find''' criteria will be modified to allow selection of the new &amp;quot;UOM&amp;quot; type. Additionally, a blank &amp;quot;-- Select --&amp;quot; option will also be provided, for when the user wished to see all codes of all types. A new Code Type of &amp;quot;UOM&amp;quot; (description &amp;quot;UOMs&amp;quot;) will be added to the EPOD_LIST_ITEMS for Reason Codes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The results table does ''not'' require modifications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The pop-up Entry/Edit form will be modified for entry of the new UOM codes.&lt;br /&gt;
&lt;br /&gt;
This is accessed when entering a new code using the '''New''' button, and when editing existing codes by clicking the '''Select''' button against a line in the results table.&lt;br /&gt;
&lt;br /&gt;
The user will be allowed to enter codes of type &amp;quot;UOM&amp;quot;, selected from the drop-down list.  A new Code Type of &amp;quot;UOM&amp;quot; will be added to the EPOD_LIST_ITEMS for Reason Codes.&lt;br /&gt;
&lt;br /&gt;
When editing or adding reason codes of type &amp;quot;UOM&amp;quot; ''only'', new fields will be present on the pop-up form, as shown below:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Label	!!Field	!!Pop-up Help&lt;br /&gt;
|-&lt;br /&gt;
|Conversion Type	|| EPL_CONV_TYPE	||USED BY BESPOKE INTERFACES ONLY to determine whether the quantity is modified or the line processed when the UOM against the product line matches this value&lt;br /&gt;
|-&lt;br /&gt;
|Value	|| EPL_CONV_VALUE	||USED BY BESPOKE INTERFACES ONLY. If Conversion Type is &amp;quot;Multiply&amp;quot;, this value is used to multiply the product quantity. If Conversion Type is &amp;quot;Round&amp;quot;, this is used to round the quantity to the nearest value provided here.&lt;br /&gt;
|-&lt;br /&gt;
|XRef Code	|| EPL_CONV_CODE	||USED BY BESPOKE INTERFACES ONLY. If present, the UOM is converted to the value provided here.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These should be laid out as shown in the screenshot in the pop-up form.&lt;br /&gt;
&lt;br /&gt;
The Conversion Type will be added with the following drop-down list items, populated from the EPOD_LISTS and EPOD_LIST_ITEMS tables.&lt;br /&gt;
* &amp;quot;Multiply&amp;quot; - enter numeric value for multiplication.&lt;br /&gt;
* &amp;quot;Round&amp;quot; - enter value to round to (e.g. 1 means integer value, 0.25 is round to nearest 0.25, etc)&lt;br /&gt;
* &amp;quot;Exclude&amp;quot; - lines of this DU type are not added at all - Value field disabled.&lt;br /&gt;
* &amp;quot;As Received&amp;quot; - no calculation - Value field disabled.&lt;br /&gt;
&lt;br /&gt;
The default value for this list will be set by the default value in the EPOD_LIST_ITEMS table, as follows:&lt;br /&gt;
* Defaults to Type &amp;quot;Multiply&amp;quot; for EBB Paper &lt;br /&gt;
* Default to &amp;quot;As Received&amp;quot; for all other customers.&lt;br /&gt;
&lt;br /&gt;
The Value field will be enabled only if the following values are selected in the Conversion Type:&lt;br /&gt;
* Multiply&lt;br /&gt;
* Round&lt;br /&gt;
The Value field will be a numeric text field, allowing decimal entry, defaulting to &amp;quot;1000&amp;quot; if enabled. &lt;br /&gt;
&lt;br /&gt;
The XRef Code will be a drop-down list of all codes of the Code Type being edited/added by this screen, and will be populated on selection of the Code Type. This drop-down list will include a blank default value of &amp;quot;Blank&amp;quot;, and show the Code and Descriptions of all the selected codes. The list will be ordered by the Code, ascending.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When saving, the values will be saved in the appropriate fields on the EPOD_REASON_CODE table, as shown above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Interface Config Screen ===&lt;br /&gt;
The Import/Export Maintenance screen (xf_config.aspx) will be modified to support configuration of the new EBB Paper interface.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=350px perrow=1&amp;gt;&lt;br /&gt;
File:FS_344273_Admin_XFConfig1.png|''Import/Export Configuration Maintenance''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Fields required to be displayed when configuring the &amp;quot;EBB&amp;quot; interface:&lt;br /&gt;
*	EPL_XF_CONFIG_ID - Always displayed.&lt;br /&gt;
*	EPL_DESCRIPTION - Always displayed.&lt;br /&gt;
*	EPL_XF_TYPE - Always displayed.&lt;br /&gt;
*	EPL_XF_DESTINATION - Always displayed.&lt;br /&gt;
*	EPL_XF_ID - Always displayed. This drop-down list will be modified to include ID &amp;quot;EBB&amp;quot;.&lt;br /&gt;
*	EPL_XF_DIRECTION - Always displayed.&lt;br /&gt;
*	EPL_WEB_USER - only if FTP or SOAP transfer types are selected.&lt;br /&gt;
*	EPL_WEB_PASSWORD - only if FTP or SOAP type selected&lt;br /&gt;
*	EPL_DB_CONNECTION - This new field will only display if type &amp;quot;EBB&amp;quot; is selected and will include validation that it must be entered. This will be labelled as &amp;quot;Database Connection&amp;quot;. The field will be a wide entry field (at least double the width of a standard field). &lt;br /&gt;
*	EPL_EXPORT_JOB_TYPES - Display if type is &amp;quot;EBB&amp;quot;. The validation on this field will be modified so that pipe-delimited list of anything can be entered, if the type is &amp;quot;EBB&amp;quot;.&lt;br /&gt;
*	EPL_FILENAME - Filename to match when picking up files. Expected to be &amp;quot;Manifest_*.xml&amp;quot;.&lt;br /&gt;
*	EPL_EMAIL_ERRORS - email address for file processing error notifications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Auto-Import ==&lt;br /&gt;
=== General ===&lt;br /&gt;
The process will update and create all data as required, committing each as they are processed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are instances where the failure reason will result in the following processing:&lt;br /&gt;
* Stop processing this file and all further files (Failed Import).&lt;br /&gt;
* Stop processing this file and process subsequent files (Failed File).&lt;br /&gt;
* Stop processing this order and move to the next order (Failed Order).&lt;br /&gt;
&lt;br /&gt;
Failed Import reasons:&lt;br /&gt;
* Unable to connect to MSA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Failed File reasons:&lt;br /&gt;
* Standing Data not being created:&lt;br /&gt;
** User does not exist&lt;br /&gt;
** Vehicle does not exist&lt;br /&gt;
** Job Group does not exist&lt;br /&gt;
* Non-DESK manifest is on a load that has already been completed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Failed Order reasons:&lt;br /&gt;
* No details of this order in MSA&lt;br /&gt;
* Job for this order already complete&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Reasons why a Manifest file will not create Loads and Jobs:&lt;br /&gt;
* Site does not exist&lt;br /&gt;
* Manifest is a trunk.&lt;br /&gt;
* Jobs are of the wrong type.&lt;br /&gt;
* There are no valid products on the job.&lt;br /&gt;
* There are no valid jobs on a Load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If there are issues processing, the whole file will be rejected and will need to be reprocessed. However, all data saved to that point will be present.&lt;br /&gt;
&lt;br /&gt;
Audit records will be maintained, identifying successfully processed and failed import files, identifying the reason why a file failed to import. &lt;br /&gt;
&lt;br /&gt;
It is possible for a manifest to generate multiple audit reasons when processing a file. All of these codes will be audited. Multiple audit records may be maintained per file, or a single audit record created with all details in it. This will be decided when developed, based on which method is a more generic solution for the C-ePOD product.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rejected files will be emailed (depending on configuration) and will be stored in the standard Failed files location, as the processes do now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The process generating the email will be modified to include the auditing of the file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When a file is reprocessed, this will over-write and update the existing data, as specified in the processing below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The processing of each file will proceed as follows:&lt;br /&gt;
* Retrieve Manifest files.&lt;br /&gt;
* Filter and validate the manifest file.&lt;br /&gt;
* Create User and Vehicle data.&lt;br /&gt;
* Create a new Load or combine to an existing Load.&lt;br /&gt;
* Create or update jobs on the load, through a link to the MSA view.&lt;br /&gt;
* Create or update products on the jobs.&lt;br /&gt;
* Remove any products from the job not contained in the manifest file.&lt;br /&gt;
* Remove any jobs from the load not contained in the manifest file.&lt;br /&gt;
These areas are covered in the following sections&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
=== Retrieve Manifest Files ===&lt;br /&gt;
For FILE transfer type, currently all files in the specified destination folder (EPL_XF_DESTINATION) are processed (using Directory.GetFiles). This will be modified so that, if a filename pattern is specified (in EPOD_XF_CONFIG.EPL_FILENAME), the process will only retrieve and process files matching this pattern (by passing a second parameter to the GetFiles method, specifying the pattern from EPOD_XF_CONFIG.EPL_FILENAME).&lt;br /&gt;
&lt;br /&gt;
For FTP transfer type, the same is true, in that all files are retrieved (using ListDirectory in method GetFileList). No facility exists to pattern-match file names. Therefore the method GetFileList will be modified so that, if a filename pattern is specified (to be passed to an overloaded method in a new parameter, passing EPOD_XF_CONFIG.EPL_FILENAME), the process will only add these to the result if the filename returned matches the pattern provided.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Regardless of whether the file was retrieved through FTP or from the filesystem, each file (representing a single manifest) will be passed to a new processing method to validate and process the contents and create jobs and products. The current process bases this on EPL_MSG_TYPE. This will be extended to check the EPL_XF_ID field - should this be &amp;quot;EBB&amp;quot;, the new processing method will be called.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A file failing to process will not stop subsequent files from processing. However, if the MSA view cannot be connected to, processing will stop (see section Create Jobs for details on the MSA View connection).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Validate the Manifest ===&lt;br /&gt;
This process will receive the manifest contents as an XML file. &lt;br /&gt;
&lt;br /&gt;
The '''depot''' tag will be extracted from the '''manifest/header''' tag contents. The site will be retrieved using the EPL_EXT_FLEET field. If a site is not found with a fleet matching the '''depot''' tag, the manifest will not be processed. {{Note}} This is not an error and will not be audited as such - the manifest will be marked as successfully processed.&lt;br /&gt;
&lt;br /&gt;
The site retrieved will be stored by the process in an EPOD_SITE DAL object.&lt;br /&gt;
&lt;br /&gt;
The '''trailer''' tag will be extracted from '''manifest/header''' tag contents. If this tag contains the text &amp;quot;TRUNK&amp;quot;, then this manifest will not be processed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Vehicles and Users ===&lt;br /&gt;
The '''driver''' tag will be extracted from the '''manifest/header''' tag contents. &lt;br /&gt;
&lt;br /&gt;
If this driver is set to &amp;quot;WAREHOUSE&amp;quot;, the user ID will be created as this value.&lt;br /&gt;
&lt;br /&gt;
If this is a non-zero value that is not explicitly &amp;quot;WAREHOUSE&amp;quot;, C-ePOD will attempt to create the driver ID (if configured to do so) as the first character of the first name, and up to the first 4 characters of the surname, with a 3-digit unique identifier added to them.&lt;br /&gt;
 &lt;br /&gt;
For example:&lt;br /&gt;
*         &amp;quot;DAVID EASTMAN&amp;quot; will become &amp;quot;DEAST001&amp;quot;&lt;br /&gt;
*         &amp;quot;SMITH JOHN&amp;quot; will become &amp;quot;SJOHN001&amp;quot;&lt;br /&gt;
*         &amp;quot;DEREK MAY&amp;quot; will become &amp;quot;DMAY001&amp;quot;&lt;br /&gt;
*         &amp;quot;TRUNKER M25&amp;quot;. TRUNKER M25 will become &amp;quot;TM25001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The process will attempt to find this user using the Site ID and the generated User ID above. If a record is found, the process will compare the user name in the XML file to the user name on the database. If different, the 3-digit id will be incremented by 1 and the process repeated until a matching EPOD_USER record is found, or one is not found for this ID.&lt;br /&gt;
&lt;br /&gt;
Check the EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG. If this is set to &amp;quot;N&amp;quot; and an EPOD_USER record is not found, the file should be rejected. An audit record of &amp;quot;User X Not Found&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
If one is not found and EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG is &amp;quot;Y&amp;quot;, the EPOD_USER record will be created and updated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ID || either &amp;quot;WAREHOUSE&amp;quot;, or as generated above&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_PASSWORD || set to the same value as the user ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_NAME || '''driver'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ADMIN || &amp;quot;N&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ACTIVE || &amp;quot;Y&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ACTIVITY_DATE || 0&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ACTIVITY_TIME || 0&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PASSWORD_VISIBLE_IND || 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The '''vehiclereg''' tag will be extracted from the '''manifest/header''' tag contents. If this is a non-zero value, C-ePOD will attempt to create the driver ID (if configured to do so).&lt;br /&gt;
&lt;br /&gt;
The process will attempt to find this vehicle using the Site ID and the Vehicle ID as the Vehicle Reg above. If a record is found, this will be stored by the process as EPOD_VEHICLE.&lt;br /&gt;
&lt;br /&gt;
Check the EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG. If this is set to &amp;quot;N&amp;quot; and an EPOD_VEHICLE record is not found, the file should be rejected. An audit record of &amp;quot;Vehicle X Not Found&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
If one is not found and EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG is &amp;quot;Y&amp;quot;, the EPOD_VEHICLE record will be created and updated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_VEHICLE_ID || '''vehiclereg'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_VEHICLE_REG || '''vehiclereg'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_DESCRIPTION || '''vehiclereg'''&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS || &amp;quot;Y&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Note}} Data created on these tables will be truncated. Comparisons to this data as described above with be truncated before comparison, in case the data is space-filled in the XML file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create a Load ===&lt;br /&gt;
A load will be attempted to be found using the following data, providing that at least a vehicle or user has been provided:&lt;br /&gt;
* EPL_SITE_ID - EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
* EPL_LOAD_START_PLANNED_DATE - '''deliverydate''' tag. Note that this value must be reformatted to YYYYMMDD format from DD-MM-YYYY format.&lt;br /&gt;
* EPL_VEHICLE_ID - EPOD_VEHICLE.EPL_VEHICLE_ID if one is present, otherwise this is not set as an parameter for the selection.&lt;br /&gt;
* EPL_USER_ID - EPOD_USER.EPOD_USER_ID if one is present, otherwise this is not set as an parameter for the selection.&lt;br /&gt;
* EPL_STATUS - &amp;quot;P&amp;quot; if the '''driver''' attribute is explicitly set to &amp;quot;WAREHOUSE&amp;quot;, otherwise this is not set as an parameter for the selection.&lt;br /&gt;
&lt;br /&gt;
If one is not found, a new load will be created on EPOD_LOAD as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID ||EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_ID || generated by the EPOD system.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_START_PLANNED_DATE || extracted from the '''deliverydate''' tag. Note that this value must be reformatted to YYYYMMDD format from DD-MM-YYYY format.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_START_PLANNED_TIME || extracted from the '''starttime''' tag. Note that this value must be reformatted (removing the embedded colon character and adding &amp;quot;0000&amp;quot; to the end. Note that if this tag is not present or blank, this field should be set to 6000000.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_END_PLANNED_DATE || as the Load Start Planned Date.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_END_PLANNED_TIME || 0&lt;br /&gt;
|-&lt;br /&gt;
|EPL_VEHICLE_ID || EPOD_VEHICLE.EPL_VEHICLE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_USER_ID || EPOD_VEHICLE.EPL_USER_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS || &amp;quot;P&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_INFORMATION || the ''number'' attribute of the '''manifest''' tag concatenated with the '''addinstruct''' tag, delimited by a dash.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a load is found and the manifest is ''not'' for desk collection (i.e. where the '''driver''' tag value is not explicitly &amp;quot;WAREHOUSE&amp;quot;), the status (EPL_STATUS) should be checked. If this value is not &amp;quot;P&amp;quot; then the file should be rejected. An audit record of &amp;quot;Load X at wrong status&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a load is found, the Load Information field EPL_LOAD_INFORMATION should be checked that it contains the text built from:&lt;br /&gt;
* the ''number'' attribute of the '''manifest''' tag concatenated with the '''addinstruct''' tag, delimited by a dash.&lt;br /&gt;
If it does not contain this, this should be added to the text already in the field, delimited by a newline character.&lt;br /&gt;
&lt;br /&gt;
The load (found or created) should be stored in an EPOD_LOAD object and updated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Jobs ===&lt;br /&gt;
The process will find and store the highest sequence of any jobs already attached to the EPOD_LOAD object, by checking the content of the EPOD_JOBS list on the EPOD_LOAD object. &lt;br /&gt;
&lt;br /&gt;
The process will extract the list of allowed order prefixes from the EPOD_XF_CONFIG.EPL_EXPORT_JOB_TYPES field. {{Note}} If this parameter is empty, all orders will be processed.&lt;br /&gt;
&lt;br /&gt;
The process will loop through all instances of the '''order''' tag in the ''manifest/data'' tag. Note that this is separated by a '''customer''' tag.&lt;br /&gt;
&lt;br /&gt;
Each '''order''' tag will be processed to create EPOD_JOB records, which will be added to the EPOD_LOAD.EPOD_JOBS list.&lt;br /&gt;
&lt;br /&gt;
The ''sopnumber'' attribute of the '''order''' tag will be extracted. if the attribute does not exist or has no value, this tag may be skipped. &lt;br /&gt;
&lt;br /&gt;
The trimmed attribute value will be checked to see whether the value begins with any of the allowed order prefixes. If it does not, then then the order will not be processed. &lt;br /&gt;
&lt;br /&gt;
A connection will be made to the MSA database for the order details. This will be achieved by opening a connection using the connection information stored in EPOD_XF_CONFIG.EPL_DB_CONNECTION. The connection should be attempted several times (for example, 3 times). If a connection cannot be made, then the file should be rejected. An audit record of &amp;quot;Order X: Cannot connect to MSA&amp;quot; shall be created. {{Note}} As this is a fundamental requirement of the process, should this fail, processing of this file ''and all others'' should be terminated for this run.&lt;br /&gt;
&lt;br /&gt;
The connection details will be specified in a connection string in EPOD_XF_CONFIG.EPL_DB_CONNECTION.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the following information has not yet been confirmed. &lt;br /&gt;
* Connection details (IP, user, password, port)&lt;br /&gt;
* Database type&lt;br /&gt;
* View name&lt;br /&gt;
&lt;br /&gt;
{{Note}} This MSA view is used from this point onwards for all details. Should the connection fail when attempting to retrieve subsequent records from the MSA view, the connection should be attempted to be re-established, again retrying several times, to ensure that this process is predominantly uninterrupted. &lt;br /&gt;
&lt;br /&gt;
In the instance where the connection fails, the file need not be rejected and moved to the Failure area - it can be left to be reprocessed immediately on the next run.&lt;br /&gt;
&lt;br /&gt;
When the connection is established, the details of the order will be retrieved from the MSA view using a standard SQL query, querying on the SOP Number.&lt;br /&gt;
&lt;br /&gt;
Should the view return no details, then the order will not be processed. An audit record of &amp;quot;Order X: No details in MSA&amp;quot; shall be created. The process will continue with the next order in the XML file.&lt;br /&gt;
&lt;br /&gt;
The Load will be checked to see whether the order already exists - the process will look for the order in EPOD_LOAD.EPOD_JOBS, where the job code (EPL_JOB_CODE_ is equal to the trimmed value of the '''sopnumber''' tag. If an order is found, an EPOD_JOB object will be created and set to the value of the job in the EPOD_LOAD.EPOD_JOBS EPOD_JOB object by reference.&lt;br /&gt;
&lt;br /&gt;
If the job found is already complete (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;), then the process will skip updating this order. An audit record of &amp;quot;Order X: already complete&amp;quot; shall be created. The process will continue with the next order in the XML file.&lt;br /&gt;
&lt;br /&gt;
If a job is not found, a new job will be created using the key values:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_LOAD.EPL_SITE_ID.&lt;br /&gt;
*	EPL_LOAD_ID - EPOD_LOAD.EPL_LOAD_ID.&lt;br /&gt;
*	EPL_JOB_TYPE - If the left 3 characters of the '''sopnumber''' tag are &amp;quot;RTN&amp;quot;, set this value to &amp;quot;C&amp;quot;, otherwise set this value to &amp;quot;D&amp;quot;.&lt;br /&gt;
*	EPL_JOB_CODE - the trimmed value of the '''sopnumber''' tag.&lt;br /&gt;
A value in EPL_JOB_ID will be generated for this job at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Job Group should be calculated as follows:&lt;br /&gt;
* If the EPL_JOB_TYPE is &amp;quot;C&amp;quot;, set to &amp;quot;COL&amp;quot;&lt;br /&gt;
* else if EPOD_LOAD.EPL_USER_ID = &amp;quot;WAREHOUSE&amp;quot;, set to &amp;quot;DESK&amp;quot;&lt;br /&gt;
* else set to &amp;quot;DEL&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The process will attempt to find this Job Group using:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_LOAD.EPL_SITE_ID.&lt;br /&gt;
*	EPL_JOB_GROUP - as set above.&lt;br /&gt;
If a record is found, this will be stored by the process as an EPOD_JOB_GROUPS DAL object.&lt;br /&gt;
&lt;br /&gt;
Check the EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG. If this is set to &amp;quot;N&amp;quot; and an EPOD_JOB_GROUPS record is not found, the file should be rejected. An audit record of &amp;quot;Job Group X Not Found&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
If one is not found and EPOD_SITE.EPL_IMPORT_CREATE_SD_FLAG is &amp;quot;Y&amp;quot;, the EPOD_JOB_GROUPS record will be created as follows:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
*	EPL_JOB_GROUP - as set above.&lt;br /&gt;
*	EPL_DESCRIPTION:&lt;br /&gt;
** If EPL_JOB_GROUP is &amp;quot;COL&amp;quot;, set to &amp;quot;Collections&amp;quot;.&lt;br /&gt;
** If EPL_JOB_GROUP is &amp;quot;DEL&amp;quot;, set to &amp;quot;Deliveries&amp;quot;.&lt;br /&gt;
** If EPL_JOB_GROUP is &amp;quot;DESK&amp;quot;, set to &amp;quot;Desk Collections&amp;quot;.&lt;br /&gt;
All flags will be set as their default values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The customer code, invoice address and contact information will be retrieved from the MSA view. The customer code will be checked as to whether it is already created in the system, by checking for an EPOD_CUSTOMER record using the keys:&lt;br /&gt;
*	EPL_SITE_ID - EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
*	EPL_CUSTOMER_CODE - column CUSTNMBR from the MSA view.&lt;br /&gt;
&lt;br /&gt;
If this record does not exist, or a record does exist but the details are different, the record will be updated as follows:&lt;br /&gt;
If one is not found, a new load will be created on EPOD_LOAD as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUSTOMER_CODE || CUSTNMBR&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUSTOMER_NAME || CUSTNAME&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_1 || InvAdd1&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_2 || InvAdd2&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_3 || InvAdd3&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_4 || InvCity&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_5 || InvState&lt;br /&gt;
|-&lt;br /&gt;
|EPL_POSTCODE || InvZip&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The delivery address and contact information will then be compared to this Invoice address, comparing the following items:&lt;br /&gt;
*	EPL_CUSTOMER_NAME - DelName&lt;br /&gt;
*	EPL_ADDRESS_1 - DelAdd1&lt;br /&gt;
*	EPL_ADDRESS_2 - DelAdd2&lt;br /&gt;
*	EPL_ADDRESS_3 - DelAdd3&lt;br /&gt;
*	EPL_ADDRESS_4 - DelCity&lt;br /&gt;
*	EPL_ADDRESS_5 - DelState&lt;br /&gt;
*	EPL_POSTCODE - DelZip&lt;br /&gt;
&lt;br /&gt;
If any of the values are different, a Job Address will be created through an EPOD_JOB_ADDRESS DAL object, populated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_SITE.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_ID || EPOD_JOB.EPL_JOB_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_TYPE || EPOD_JOB.EPL_JOB_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|EPL_NAME || DelName&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_1 || DelAdd1&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_2 || DelAdd2&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_3 || DelAdd3&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_4 || DelCity&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ADDRESS_5 || DelState&lt;br /&gt;
|-&lt;br /&gt;
|EPL_POSTCODE || DelZip&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is not the first job being processed for the load, the process will check whether the job being created is not the first job being created for the customer code in this manifest. If this is not a subsequent job for this customer code, blank any stored values for the following fields:&lt;br /&gt;
* EPL_SEQUENCE&lt;br /&gt;
* EPL_LINKED_ID&lt;br /&gt;
&lt;br /&gt;
If this is not a subsequent job for this customer code, the process will then loop through existing jobs in EPOD_LOAD.EPOD_JOBS in reverse sequence, looking for any job that matches as follows:&lt;br /&gt;
* EPL_CUSTOMER_CODE is the same&lt;br /&gt;
* EPL_STATUS not &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;&lt;br /&gt;
* EPL_JOB_TYPE is the same as the job being created.&lt;br /&gt;
* The delivery address is the same as the job being created.&lt;br /&gt;
&lt;br /&gt;
If a match is found, check the value of the field EPL_LINKED_ID. If there is no value, set this to the value in the record's EPL_SEQUENCE field and update the object. The process will then store the values in the following fields:&lt;br /&gt;
* EPL_SEQUENCE - EPL_SEQUENCE of the job found&lt;br /&gt;
* EPL_LINKED_ID - EPL_LINKED_ID of the job found&lt;br /&gt;
&lt;br /&gt;
The EPOD_JOB object will then be updated with the values as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_GROUP	|| The calculated Job Group above&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_INSTRUCTION	|| Order comments (OrdComm) and Delivery Instructions (DelIns) concatenated together with a space separator.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS	|| &amp;quot;P&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUSTOMER_CODE	|| The customer code (CUSTNMBR).&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SEQUENCE	|| Stored value of EPL_SEQUENCE if there is one, or the maximum value of sequences of jobs on this load, plus 1.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_START_PLANNED_DATE	|| ReqShipDate&lt;br /&gt;
|-&lt;br /&gt;
|EPL_START_PLANNED_TIME	|| StartTime if populated, else 0600&lt;br /&gt;
|-&lt;br /&gt;
|EPL_END_PLANNED_DATE	|| ReqShipDate&lt;br /&gt;
|-&lt;br /&gt;
|EPL_END_PLANNED_TIME	|| DelTime if populated, else FinishTime if populated, else 1400.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_CODE	|| the trimmed value of the '''sopnumber''' tag.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUST_REF	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_OFFICE_INSTRUCTION	|| tcsFLST_Route&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SO_NUMBER	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ORDER_DATE	|| CREATDDT&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SALES_CONTACT	|| UserID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_OWNER_NAME	|| The sales territory (SALSTERR)&lt;br /&gt;
|-&lt;br /&gt;
|EPL_EXT_REF	|| The manifest (extracted from the ''number'' attribute of the '''manifest''' tag)&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ACCOUNT	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LINKED_ID	|| Stored value of EPL_LINKED_ID if there is one.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_TIMEZONE	|| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_LOAD_LOCATION	|| Originating Depot&lt;br /&gt;
|-&lt;br /&gt;
|EPL_TTM_STOP_NUMBER	|| Set to the value in EPL_SEQUENCE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will then store the following:&lt;br /&gt;
* EPL_CUSTOMER_CODE - the Customer code last processed in this manifest file.&lt;br /&gt;
* EPL_SEQUENCE - EPL_SEQUENCE of the job created&lt;br /&gt;
* EPL_LINKED_ID - EPL_LINKED_ID of the job created&lt;br /&gt;
&lt;br /&gt;
The job will be updated and saved at this point.&lt;br /&gt;
&lt;br /&gt;
The Job ID of the job created will be added to a comma-delimited string of jobs processed for this manifest.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Products ===&lt;br /&gt;
The process will loop through each record from MSA view, in order to create the product lines. {{Note}} All lines in the MSA view detail product information, including the first line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The value in UOFM field of the MSA view will be looked up against the EPOD_REASON_CODE table matching the following parameters:&lt;br /&gt;
* EPL_SITE_ID - EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
* EPL_REASON_CODE - UOFM&lt;br /&gt;
&lt;br /&gt;
If a record is not found, create an EPOD_PRODUCT DAL object with values set as follows:&lt;br /&gt;
* EPL_SITE_ID - EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
* EPL_REASON_CODE - UOFM&lt;br /&gt;
* EPL_DESCRIPTION - UOFM&lt;br /&gt;
* EPL_CONV_TYPE - &amp;quot;MULTIPLY&amp;quot;&lt;br /&gt;
* EPL_CONV_VALUE - 1000&lt;br /&gt;
* EPL_CONV_CODE - &amp;quot;&amp;quot;&lt;br /&gt;
Update this UOM code.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;EXCLUDE&amp;quot;, this product will not be added - the process will move to the next record in the MSA view.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;MULTIPLY&amp;quot;, multiply the value in the QUANTITY field of the MSA view by the value stored in EPL_CONV_VALUE and store as the quantity.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;ROUND&amp;quot;, round the value in the QUANTITY field of the MSA view by the value stored in EPL_CONV_VALUE and store as the quantity.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_TYPE is &amp;quot;DEFAULT&amp;quot;, store the value in the QUANTITY field of the MSA view as the quantity.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_CODE has a valid value, store the EPL_CONV_CODE as the UOM.&lt;br /&gt;
&lt;br /&gt;
If the value of EPOD_PRODUCT.EPL_CONV_CODE is blank or null, store the UOFM field from the MSA view as the UOM.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will check to see if a product already exists on the job by checking the EPOD_JOB.EPOD_PRODUCTS list for an object with the following values:&lt;br /&gt;
* EPL_SITE_ID - EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
* EPL_JOB_ID - EPOD_JOB.EPL_JOB_ID&lt;br /&gt;
* EPL_CONTAINER_ID - &amp;quot;000000000000000&amp;quot; (15 zeroes in a string, denoting a loose product)&lt;br /&gt;
* EPL_PRODUCT_CODE - ITEMNMBR &lt;br /&gt;
&lt;br /&gt;
If one is not found, an EPOD_PRODUCT object will be created and added to the EPOD_JOB.EPOD_PRODUCTS list.&lt;br /&gt;
&lt;br /&gt;
If one is found or created above, an EPOD_PRODUCT object will be pointed to this object by reference.&lt;br /&gt;
&lt;br /&gt;
The EPOD_PRODUCT object (found or created) will have the fields updated as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!Field	!!Populated by&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SITE_ID || EPOD_JOB.EPL_SITE_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_JOB_ID || EPOD_JOB.EPL_JOB_ID&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CONTAINER_ID || &amp;quot;000000000000000&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_CODE || ITEMNMBR&lt;br /&gt;
|-&lt;br /&gt;
|EPL_SEQUENCE || 1&lt;br /&gt;
|-&lt;br /&gt;
|EPL_DESCRIPTION || ITEMDESC, truncated to 40 characters&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_QTY_PLANNED || The quantity calculated and stored above&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_QTY_CASE || SellPack if populated and numeric, else 0.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_STATUS || &amp;quot;P&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_WEIGHT || ITEMSHWT&lt;br /&gt;
|-&lt;br /&gt;
|EPL_CUST_REF || CustordNo&lt;br /&gt;
|-&lt;br /&gt;
|EPL_ITEM_TYPE ||&lt;br /&gt;
|-&lt;br /&gt;
|EPL_UNIT_TYPE || The UOM stored above.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_DESCRIPTION_LONG || ITEMDESC and ebbFLTX_Sales_Comments concatenated with CR/LF characters.&lt;br /&gt;
|-&lt;br /&gt;
|EPL_PRODUCT_QTY_ORDERED || Set to the same value as EPL_PRODUCT_QTY_PLANNED&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The product record on EPOD_PRODUCT will then be updated.&lt;br /&gt;
&lt;br /&gt;
The Product Code of the product created will be added to a comma-delimited string of products processed for this job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Remove Products not on the Job ===&lt;br /&gt;
All subsequent records on the MSA view will be processed in this manner and stored on the job.&lt;br /&gt;
&lt;br /&gt;
When all products are processed, the process will check through all products on the job and compare to the list of products processed on this manifest for this job. Any products on the job but not in the manifest will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If, after this, there are no products on the job, the job will be deleted. An audit record of &amp;quot;No Products on Order X - order deleted&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Remove Jobs not on the Load for that Manifest ===&lt;br /&gt;
All subsequent order tags in the Manifest will be processed in this manner and stored on the load.&lt;br /&gt;
&lt;br /&gt;
When all orders on the manifest are processed, the process will check through all jobs on the load (with that Manifest number, as stored in EPL_EXT_REF) and compare to the list of jobs processed on this manifest. Any jobs for this manifest on the load but not in the manifest will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If, after this, there are no jobs on the load, the load will be deleted. An audit record of &amp;quot;No Jobs on Load X - load deleted&amp;quot; shall be created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing the new EBB paper interface can be configured and works as expected.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=A system configured as EBB Paper.&lt;br /&gt;
|Objective=To test that: UOMs may be entered with conversion types; the EBB Paper interface may be configured and; the EBB paper interface works as expected.&lt;br /&gt;
}} {{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Admin&lt;br /&gt;
|Notes=&amp;amp;nbsp;&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new Interface type as expected for EBB Paper.&lt;br /&gt;
|Result=The new EBB Paper interface can be configured and edited as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new reason code. Select type &amp;quot;UOM&amp;quot;.&lt;br /&gt;
|Result=Type UOM can be selected from the drop-down list. The Conversion fields are displayed and defaulted as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select Conversion Type &amp;quot;Round&amp;quot; and &amp;quot;Multiply&amp;quot;.&lt;br /&gt;
|Result=A Value may be entered.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Save the code. Enter another code. Select other Conversion Types.&lt;br /&gt;
|Result=A Value may not be entered.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Save the code. Enter another code with an Xref code and conversion type &amp;quot;As Received&amp;quot;.&lt;br /&gt;
|Result=The XRef code is entered and saved.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Find all UOM codes. &lt;br /&gt;
|Result=UOM can be selected as a filter element. All UOM codes are displayed. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Edit UOM codes.&lt;br /&gt;
|Result=The codes are displayed as they were entered. The Conversion fields are displayed as expected.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Interface&lt;br /&gt;
|Notes=Set up the site to NOT create standing data. Configure the interface for FTP file transfer. Configure the MSA connection to be incorrect.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create valid manifest files in the configured FTP area, one named &amp;quot;Manifest_test1.xml&amp;quot; and one named &amp;quot;incorrect.xml&amp;quot;. Both should have a user that does not match an existing vehicle. Run the import process.&lt;br /&gt;
|Result=Only the manifest matching the filename is processed. This is rejected for an invalid user. The file is placed in a Failed directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Change the interface configuration to FILE transfer type. Create valid manifest files in the configured FILE area, one named &amp;quot;Manifest_test2.xml&amp;quot; and one named &amp;quot;incorrect.xml&amp;quot;. Both should have a vehicle that does not match an existing vehicle, but with a valid user. Run the import process.&lt;br /&gt;
|Result=Only the manifest matching the filename is processed. This is rejected for an invalid vehicle. The file is placed in a Failed directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Process a manifest (any transfer method) with a valid user and vehicle, with job groups not created.&lt;br /&gt;
|Result=The file is rejected for invalid job group. The file is placed in a Failed directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Configure the system to create standing data. Create two valid (but different) manifests, with a user and vehicle that does not match any existing data. Ensure there is a valid job with at least one valid product.&lt;br /&gt;
|Result=The first file is processed and rejected due to being unable to connect to MSA. The second file is not processed at all.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Configure the interface with the correct MSA view connection details. Process the manifests above again.&lt;br /&gt;
|Result=The files are processed without errors. The Vehicle is created. The Users is created. The Job Group is created. The Customer is created. The Load is created. The Job is created. The products are created. The file is audited as processed successfully. The file is placed in a Success directory.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest almost identical to the last manifest, but with different Load start time, Job Start time, product quantities. Ensure the invoice address is changed. Ensure that there are comments on the Manifest. Process the manifest.&lt;br /&gt;
|Result=The load, job and products are updated. The manifest comments are appended to the Load Instructions. The invoice (customer) address is updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with orders with one valid sopnumber, and all others as invalid SOP numbers. Ensure the valid order is not for the same customer as the prior manifest. Process the manifest.&lt;br /&gt;
|Result=A job is created on the load for the one valid order. All others are not processed. The job is sequenced after all others&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with an order with a valid INV sopnumber. Ensure the order is for the same customer as the first manifest. Process the manifest.&lt;br /&gt;
|Result=A job is created on the load for the order. The job is sequenced and linked to the matching job from the first manifest.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with orders with a valid sopnumber with the same customer code as the last manifest. Ensure two are RTN jobs and two are INV jobs. Process the manifest.&lt;br /&gt;
|Result=Jobs are created on the load for the orders. The jobs are correctly identified as Collection and Delivery jobs, with the correct Job Group. The jobs are sequenced after any existing jobs on the load. The RTN jobs will have the same sequence and linked ID. The INV jobs will have the same sequence and linked ID as the existing INV job on the load for this customer.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for the same date, vehicle and user, with orders with a valid sopnumber with the same customer code as the last manifest. Ensure two are RTN jobs and two are INV jobs. Ensure the delivery address is different to the invoice address. Process the manifest.&lt;br /&gt;
|Result=Jobs are created on the load for the orders. The jobs are correctly identified as Collection and Delivery jobs, with the correct Job Group. The jobs are sequenced after any existing jobs on the load. The RTN jobs will have the same sequence and linked ID. The INV jobs will have the same sequence and linked ID. No jobs will be linked to existing jobs on the manifest. The Job Address is created for these loads.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a manifest for a different date, vehicle and user, with orders with valid sopnumbers, for many customers. Ensure that they have a mix of UOMs configured with Round, Multiply, As Received, Exclude and Xref Code conversions, as well as a product without a configured UOM.&lt;br /&gt;
|Result=The jobs and products are created as expected. The Exclude product is not created. The quantities are set as per the conversion type rules. The unknown UOM is created with default values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete or cancel the load created. Process the same manifest file.&lt;br /&gt;
|Result=The manifest is rejected for invalid load status.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Process a DESK COLLECT manifest with a user of &amp;quot;WAREHOUSE&amp;quot;&lt;br /&gt;
|Result=A load is created. The user is created.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete or cancel the load created. Process another DESK COLLECT manifest file.&lt;br /&gt;
|Result=A new load is created. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Process a manifest with a job with no valid products.&lt;br /&gt;
|Result=The file is processed successfully. Audit history is recorded as the job having no products, and the load having no jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}{{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[[REQ 343463 EBB Paper Solution Design]]&lt;br /&gt;
|RefV1=2.0&lt;br /&gt;
|RefDate1=01/08/2017&lt;br /&gt;
|EREQ=0&lt;br /&gt;
|EEST=0&lt;br /&gt;
|EFS=4.0&lt;br /&gt;
|ETS=0&lt;br /&gt;
|EDEV=18.5&lt;br /&gt;
|ESTT=2.75&lt;br /&gt;
|EIMP=0.25&lt;br /&gt;
|EPM=1.5&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=5&lt;br /&gt;
|ST=0.0&lt;br /&gt;
|IMP=0.0&lt;br /&gt;
|PM=0.0&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|FOC=N&lt;br /&gt;
|Rev1=Matt Turner&lt;br /&gt;
|Rev1Title=OBSL Account Manager&lt;br /&gt;
|Rev2=Rebecca Elliott&lt;br /&gt;
|Rev2Title=EBB Paper Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_343463_EBB_Paper_Solution_Design&amp;diff=4593</id>
		<title>REQ 343463 EBB Paper Solution Design</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_343463_EBB_Paper_Solution_Design&amp;diff=4593"/>
		<updated>2017-06-23T13:32:45Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: Review&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|EBB}}&lt;br /&gt;
{{#vardefine:ClientName|Elliott Baxter and Co}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|EBB Paper Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.5}}&lt;br /&gt;
{{#vardefine:Date|23rd June 2017}}&lt;br /&gt;
{{#vardefine:Reference|343463}}&lt;br /&gt;
{{#vardefine:Year|2017}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 08/06/2017 at the EBB Paper office in Farnborough, and amended with further details from emails of additional details and clarifications from the customer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the C-ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. TMS and ERP) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
* Modifications are required to the customer systems (ERP) to achieve the functionality described in this document.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Elliott Baxter is the leading family owned Independent Paper Supplier in the UK. Formed in 1922, the company is now into its fourth generation of Elliott ownership and management.&lt;br /&gt;
&lt;br /&gt;
Sales for last year were £138 million delivering a total of 177,000 tonnes. For comparison purposes, in 1980 sales were £4 million with 4800 tonnes of paper delivered.&lt;br /&gt;
&lt;br /&gt;
EBB Paper express delivery service is supported by a fleet of 90 delivery vehicles, which travel an average of 30,000 miles a year.&lt;br /&gt;
The Company makes over 1,500 deliveries per day, many of which are delivered same-day.&lt;br /&gt;
&lt;br /&gt;
EBB Paper stocks over 21,000 tonnes of paper. At current prices, the stock value is approximately £17 million.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Main Office Address:&lt;br /&gt;
&lt;br /&gt;
Farnborough Sales Office&amp;lt;br /&amp;gt;&lt;br /&gt;
Elliott Baxter and Co. Ltd.&amp;lt;br /&amp;gt;&lt;br /&gt;
Nexus Park&amp;lt;br /&amp;gt;&lt;br /&gt;
Lysons Avenue&amp;lt;br /&amp;gt;&lt;br /&gt;
Farnborough&amp;lt;br /&amp;gt;&lt;br /&gt;
Hampshire GU12 5QE&amp;lt;br /&amp;gt;&lt;br /&gt;
Tel: 01252 379900&amp;lt;br /&amp;gt;&lt;br /&gt;
Fax: 01252 379911&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are 9 distribution sites/sales offices:&lt;br /&gt;
* Birmingham&lt;br /&gt;
* Bristol&lt;br /&gt;
* Farnborough&lt;br /&gt;
* Glasgow&lt;br /&gt;
* Hemel Hempstead&lt;br /&gt;
* Manchester&lt;br /&gt;
* Newcastle&lt;br /&gt;
* Sheffield&lt;br /&gt;
* Thurrock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
* Paul Griffiths - IT Director - p.griffiths@ebbpaper.co.uk&lt;br /&gt;
* Rebecca Elliott - Project Sponsor - R.Elliott@ebbpaper.co.uk&lt;br /&gt;
* Terry Dixon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OBS Logistics Contacts:&lt;br /&gt;
* Matt Tipping - Project Manager - Matthew.Tipping@obs-logistics.com&lt;br /&gt;
* Matt Turner - Sales/Account Manager - Matthew.Turner@obs-logistics.com&lt;br /&gt;
* Warren Wright - Sales/''CALIDUS'' VEhub - Warren.Wright@obs-logistics.com&lt;br /&gt;
* Tony Walker - Solution Design - Tony.Walker@obs-logistics.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Existing System Processes ==&lt;br /&gt;
The core systems for the business are an externally-provided ERP (GP) and TMS (MSA), with OBS Logistics' systems as follows:&lt;br /&gt;
* ''CALIDUS'' ePOD - execution.&lt;br /&gt;
* ''CALIDUS'' VEhub - vehicle checks.&lt;br /&gt;
* ''CALIDUS'' Portal TTM - tracking.&lt;br /&gt;
* TomTom - navigation.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The original solution from the sales process was to include ''CALIDUS'' TMS and WMS products. At this time, the customer is not ready to replace TMS. However, the customer believes that immediate benefits can be derived from C-ePOD, C-VEhub and TTM without C-TMS or C-WMS.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operational processes will be:&lt;br /&gt;
*	Orders are entered into the ERP. &lt;br /&gt;
*	ERP interfaces the orders to TMS.&lt;br /&gt;
*	When orders are manifested, this creates an XML file with basic order and trip details.&lt;br /&gt;
*	A bespoke interface in ''CALIDUS'' ePOD will pick up the XML file and process this, retrieving additional details of the product lines and the addresses from the ERP.&lt;br /&gt;
*	{{#var:System}} executes jobs and captures the actual delivery quantities, additional information and signatures.&lt;br /&gt;
*	TomTom Nav is used for navigation to the destination.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The vehicles will be using the TomTom PRO 8xxx devices to run ''CALIDUS'' VEhub, the {{#var:System}} client application and the built-in TomTom navigation applications. The TomTom devices are expected to be ordered from Fleet Trak after the completion of the requirements session.&lt;br /&gt;
&lt;br /&gt;
The customer is providing the SIM cards, with Fleet Trak used to commission and install the devices.&lt;br /&gt;
&lt;br /&gt;
All application software will be downloaded through the TomTom MDM (Mobile Device Management) platform.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is recommended that the steps to commission the devices are as follows:&lt;br /&gt;
* Order the SIM cards.&lt;br /&gt;
* Order the devices.&lt;br /&gt;
* Fleet Trak to install the SIM cards in the devices and pre-load the applications.&lt;br /&gt;
&lt;br /&gt;
The software will be rolled out as follows:&lt;br /&gt;
* ''CALIDUS'' VEhub - All depots&lt;br /&gt;
* ''CALIDUS'' ePOD - Farnborough&lt;br /&gt;
* ''CALIDUS'' ePOD - Other depots&lt;br /&gt;
* ''CALIDUS'' TTM&lt;br /&gt;
&lt;br /&gt;
An updated project plan will be sent to the customer when available, detailing the timelines of all phases of the project, including the implementation and development phases.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operation will expect to execute the following movement types:&lt;br /&gt;
* Trunk&lt;br /&gt;
* Radial Delivery&lt;br /&gt;
* Desk Collect&lt;br /&gt;
&lt;br /&gt;
Android tablets will be used to complete the customer (desk) collections through C-ePOD. These will be defined as a separate job group for configuration purposes. These will be performed through C-ePOD running on basic android devices, probably tablet, possibly Wi-Fi only.&lt;br /&gt;
&lt;br /&gt;
Desk collections will be interfaced to C-ePOD on a separate manifest per depot, but with a vehicle of &amp;quot;WAREHOUSE&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
There are also supplier direct to customer deliveries. As these are not executed through the EBB network, they will not be interfaced to C-ePOD.&lt;br /&gt;
&lt;br /&gt;
A list of branches and their details has been provided by the customer.&lt;br /&gt;
&lt;br /&gt;
Roughly 30 new delivery addresses are created each day.&lt;br /&gt;
&lt;br /&gt;
A list of email addresses for the branches is required&lt;br /&gt;
&lt;br /&gt;
Certain data is required for configuration of all OBS systems being installed, such as:&lt;br /&gt;
* Depots&lt;br /&gt;
* Drivers, including passwords/PINs&lt;br /&gt;
* Vehicles, including Registration, Make and Model&lt;br /&gt;
* Trailers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lot-controlled items are delivered in this operation. Details are to be provided by the customer, including examples. It is believed that, at this time, this is not a go-live requirements for the implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Further example files have been provided for trunks. These need to be assessed and detailed in the functional specification stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
OBS Logistics have been requested to write the interface in order to speed up the delivery of the project.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Bespoke Import Interface&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The loads are interfaced from MSA in a custom XML format in a flat-file, after the routes are planned. A button is pressed when the manifest is finished planning to create this file.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The manifests are used for picking. If additional orders are added to the vehicle (add-ons), the orders are placed on a separate manifest, for the same vehicle on the same day. This is because adding orders to an existing manifest (which is possible) will confuse the pickers and potentially result in double picks. This quite frequently on radial deliveries, and is expected to happen every day on trunk loads.&lt;br /&gt;
&lt;br /&gt;
This file does not contain all the information required to create the jobs. Predominantly, address information and product case details are missing from this interface file.&lt;br /&gt;
&lt;br /&gt;
The remaining information is to be accessed directly from a view on the ERP system, running a SQL Server database.&lt;br /&gt;
&lt;br /&gt;
The interface created will be triggered by the receipt of the TMS XML file. The processing of the jobs on this file will retrieve the information on the orders from a view available in the ERP, through direct connection to this database. &lt;br /&gt;
&lt;br /&gt;
{{Note}} The C-ePOD system will be hosted by OBS, whilst the ERP is hosted by the customer. This interface will need to connect to this ERP to access the view to get the job details. There is a technical requirement to have the two servers connected, which will require action by OBS technical services and the customer in collaboration.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A scheduled import process will be created on the system, running at a timed interval.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There will be multiple manifests sent for the same vehicle on the same day. These must be combined into a single manifest on C-ePOD. {{Note}} In order for the interface to successfully combine manifests, it is assumed that there will be one load required per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Manifests (that create Loads in C-ePOD) will be allocated to a vehicle and/or driver. This allows the loads to be created and allocated to a driver for completion. Note however that, once created, the {{#var:System}} Admin system (Load or User screens) may be used to change allocation of vehicles and drivers on a load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface will create loads, one per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
The system will be configured to create standing data from the received import information, such as:&lt;br /&gt;
* Drivers&lt;br /&gt;
* Customers (Invoice Addresses)&lt;br /&gt;
* Vehicles&lt;br /&gt;
As noted above, it is expected that this data will be created at implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sites will be created for each depot, following the encoding within the customer systems:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!GP Site ID	!!GP ADI Site ID	!!Fleet name&lt;br /&gt;
|-&lt;br /&gt;
|03 CHARLTO	||903 ADI	||Thurrock&lt;br /&gt;
|-&lt;br /&gt;
|04 FARNBO	||904 ADI	||Farnborough&lt;br /&gt;
|-&lt;br /&gt;
|05 WATFORD	||905 ADI	||Watford&lt;br /&gt;
|-&lt;br /&gt;
|09 YEOVIL	||909 ADI	||BRISTOL&lt;br /&gt;
|-&lt;br /&gt;
|10 BIRMING	||910 ADI	||Birmingham&lt;br /&gt;
|-&lt;br /&gt;
|11 MANCHES	||911 ADI	||Manchester&lt;br /&gt;
|-&lt;br /&gt;
|12 SHEFFIE	||912 ADI	||Sheffield&lt;br /&gt;
|-&lt;br /&gt;
|13 NEWCAST	||913 ADI	||Newcastle&lt;br /&gt;
|-&lt;br /&gt;
|14 GLASGOW	||914 ADI	||Glasgow&lt;br /&gt;
|-&lt;br /&gt;
|31 FELIXST	||931 ADI	||Felixstowe&lt;br /&gt;
|-&lt;br /&gt;
|32 MAREXPO	||932 ADI	||Marexport&lt;br /&gt;
|}&lt;br /&gt;
{{Note}} The site is taken from the Originating Depot. The ADI site ID will be considered to be the GP site ID in this interface. Any manifests in the file for sites not in this list will not have loads or jobs created for them.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The interface must identify the Site (the executing depot) and the Owner (the originator). Confirmation is required as to what data from the interface files contain this information. This may be confirmed at functional specification stage for this interface change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The manifest on which a job is received will be stored against the job in C-ePOD, as well as any of the other customer references. This will be used by the interface to determine if the manifest has been received before. If this is the case, and the manifest has been modified (i.e. orders or products removed or added), this will be used by the system to determine whether jobs are to be added to the created load for this vehicle and day, or whether the jobs will be removed (deleted). Products not on the jobs updated will be removed, and new products added.&lt;br /&gt;
&lt;br /&gt;
The jobs will be placed on the Load in the order in which they are received in the manifest file. If a further manifest is received for this vehicle, the jobs will be added to the end of the manifest. A hard sequence will be generated for the jobs on the manifest.&lt;br /&gt;
&lt;br /&gt;
In the interface, orders for the same customer code will be linked together and consolidated on the device, ensuring that only one delivery instruction is present, although both orders will be maintained.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are many different types of orders. The type is identified through the alpha prefix against the order. The main types are below:&lt;br /&gt;
* INV - Delivery order&lt;br /&gt;
* CAL - Call-off. Considered to be the same as an INV order.&lt;br /&gt;
* ISTIN - transfer of stock between depots (inter-warehouse transfer or IWT) &lt;br /&gt;
* RTN - Collection from customer.&lt;br /&gt;
&lt;br /&gt;
Job Instructions should be populated with Order comments (OrdComm) and Delivery Instructions (DelIns) concatenated together.&lt;br /&gt;
&lt;br /&gt;
When receiving jobs through the interface, the invoice (customer) address will be updated, if this has changed. EBB Paper have confirmed that the Invoice address changing is as expected. It has been confirmed that any previous jobs with this invoice (customer) address will from that point show the new invoice address, and this is acceptable to EBB Paper.&lt;br /&gt;
&lt;br /&gt;
Planned delivery times will be maintained on each job created. &lt;br /&gt;
&lt;br /&gt;
There are essentially 2 types of order:&lt;br /&gt;
* A non-timed delivery will have a cut off of 14:00&lt;br /&gt;
* Timed Delivery&lt;br /&gt;
&lt;br /&gt;
{{Note}} Development work is required with GP to allow the EBB Paper sales team to maintain times on the order. This will be an EBB Paper task to complete.&lt;br /&gt;
&lt;br /&gt;
The start and end planned time (in columns &amp;quot;S Time&amp;quot; and &amp;quot;E Time&amp;quot;) will be used for the start and end planned time for the jobs. If these are not present, the DelTime column will be used. If this is not present, the planned start and end times will be defaulted to 0600 and 1400 respectively.&lt;br /&gt;
&lt;br /&gt;
All jobs will be set with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be Job Group configurations for the different job types, as they will have different execution processes on the mobile devices:&lt;br /&gt;
* Trunk&lt;br /&gt;
** No Driver or Customer Signature&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Radial Collection/Delivery&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Desk Collect&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature will ''not'' be enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
For all jobs groups, it is expected that the following will also be configured:&lt;br /&gt;
* No Job Photo&lt;br /&gt;
* EBB Paper POD format&lt;br /&gt;
* Terms and Conditions is expected to be set to:&lt;br /&gt;
** Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The products will be created on each job created with the details taken from the ERP. The details expected to be received are:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description - stored as a truncated value&lt;br /&gt;
* FSC number (optional) - stored with the full product description in the long description field.&lt;br /&gt;
* Pack Size&lt;br /&gt;
* UOM&lt;br /&gt;
* Weight&lt;br /&gt;
* Quantity&lt;br /&gt;
&lt;br /&gt;
The pack size of the product will be taken from the ERP view in the interface. This will come from Sell Pack in the interface. It is noted that there is also a Purch Pack field, and it is confirmed that C-ePOD has no place to store this information.&lt;br /&gt;
&lt;br /&gt;
UOFM is the defined unit of measure of the product being delivered. There are multiple products UOMs that require the quantity to be decimal (for example, Weight (TONNES), Length (LINEAR METRES), Area (METRES SQUARED). For these products, the import process will set the quantity to 1 and store the actual quantity in another field, which will be displayed on the mobile device. &lt;br /&gt;
&lt;br /&gt;
The following is a list of the UOFMs known at this time and the proposals to handle them:&lt;br /&gt;
*	1 - always 1 - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	1000 - quantity will be multiplied by 1000.&lt;br /&gt;
*	BOTTLE - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	BOX - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	CHARGE - Excluded - this is a delivery charge. No line will be created.&lt;br /&gt;
*	EACH - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ENVS - Envelopes. Quantity will be multiplied by 1000. &lt;br /&gt;
*	MISC - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ROLL - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	SETS -Multi-part paper. Quantity will be multiplied by 1000.&lt;br /&gt;
*	SHEETS - quantity will be multiplied by 1000&lt;br /&gt;
*	TONNE - quantity will be set to 1. Quantity in file will be put in Item Type field. &lt;br /&gt;
*	METRES SQUARED - quantity will be set to 1. Quantity in file will be put in Item Type field.&lt;br /&gt;
*	LINEAR METRES - quantity will be set to 1. Quantity in file will be put in Item Type field.&lt;br /&gt;
&lt;br /&gt;
There are then essentially 4 rules:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!RULE	!!UOMS&lt;br /&gt;
|-&lt;br /&gt;
|Multiply by 1000 	||1000, ENVS, SETS, SHEETS&lt;br /&gt;
|-&lt;br /&gt;
|Round up to nearest integer value	||1, BOTTLE, BOX, EACH, MISC, ROLL&lt;br /&gt;
|-&lt;br /&gt;
|Exclude	||CHARGE&lt;br /&gt;
|-&lt;br /&gt;
|Set to 1 and put in Item Type field	||TONNE, METRES SQUARED, LINEAR METRES&lt;br /&gt;
|}&lt;br /&gt;
Any not on the list would follow the last rule (i.e. set quantity to 1 and put the quantity in the item type)&lt;br /&gt;
&lt;br /&gt;
Further analysis is required on this and confirmation from the customer has been requested. If not appropriate, development work must be undertaken to change C-ePOD and C-PORTAL to handle decimal values.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Support decimal values in quantities&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Trunk movements are defined as movements between two depots (sites) defined in the list above.&lt;br /&gt;
&lt;br /&gt;
Trunk orders created will include the products - there could up 100 or more products on the trunk moves. &lt;br /&gt;
&lt;br /&gt;
{{Note}} If the trunk of an order is cancelled, the radial delivery of the job will not be planned or manifested and therefore C-ePOD will not receive it, so it will never be executed. This is as expected - no further functionality within C-ePOD is required to attempt to cancel onward deliveries of the same order if the prior delivery is cancelled.&lt;br /&gt;
&lt;br /&gt;
For deliveries that are trunked and then refused by the customer, stock is either held at the delivering depot (if it stocks this product) or a separate IWT order is generated to transfer the stock back to the originating depot. This will generate an order for C-ePOD, which will be treated as any other trunk or IWT order.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface (Admin console) and a mobile device application for use in completing jobs, consisting of pick-ups (collections) and drop-offs (deliveries).&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} Administration console is a web-based application that handles all of the administrative side of the C-ePOD devices. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Access to this Admin system is through a web browser, connecting to a provided URL for the system. Access to this URL must be allowed from the EBB Paper network for all users that require it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users and Vehicles.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To track progress against the Loads, Jobs, Vehicles and Users.&lt;br /&gt;
* To print or email a POD/POC.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is confirmed that ''all'' Loads will be assigned to Vehicles through the ERP import interface. &lt;br /&gt;
&lt;br /&gt;
A facility to manually assign Loads to drivers and vehicles for problem-solving purposes.&lt;br /&gt;
&lt;br /&gt;
The resource allocation may be managed through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_336500_Admin_Users3.png|border|600px]]&lt;br /&gt;
[[file:REQ_336500_Admin_Users1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_336500_Admin_Load3.png|border|600px]]&lt;br /&gt;
[[file:REQ_336500_Admin_Load2.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If loads are created without a driver assigned (vehicle will always be assigned through the interface), the driver will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ''CALIDUS'' VEhub ==&lt;br /&gt;
The ''CALIDUS'' VEhub system is used to:&lt;br /&gt;
* Capture Vehicle Checks&lt;br /&gt;
* Asset Tagging at locations&lt;br /&gt;
* Capture Accident Reports&lt;br /&gt;
&lt;br /&gt;
{{Note}} ''CALIDUS'' VEhub is already configured for EBB Paper use and is ready to be used. It is likely that this will be rolled out to all depots as soon as possible. However, note that C-VEhub is not part of this solution design document, and will configured as part of the implementation of this project.&lt;br /&gt;
&lt;br /&gt;
As part of this project, C-VEhub will be created for each depot to access their vehicles and the data entered through the mobile application. C-VEhub Admin access will be provided for every branch.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Access to this Admin system is through a web browser, connecting to a provided URL for the system. Access to this URL must be allowed from the EBB Paper network for all users that require it.&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password (expected to be a PIN number). The users and their passwords must be configured within C-VEhub. It is expected that the username and password will be configured to be the TomTom WEBFLEET username and PIN. &lt;br /&gt;
&lt;br /&gt;
C-VEhub will be configured to send email alerts of every defective vehicle check completed to the defined email addresses for each depot.&lt;br /&gt;
&lt;br /&gt;
It is noted the Vehicle Checks table (and all other tables in this system) will be modified for improved searching.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Improved searching on tables&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is noted that the insurance cover note will be provided to the drivers through a cloud-enabled repository, such as DropBox.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== C-ePOD Mobile Device Application ==&lt;br /&gt;
The mobile device application will be used to execute all types of trips executed by the depots, namely:&lt;br /&gt;
* Radial Deliveries and customer collections&lt;br /&gt;
* Trunk trips&lt;br /&gt;
* Desk Collections&lt;br /&gt;
The below sections detail the flow of the radial deliveries predominantly, then indicate how these processes will be used to execute other trip types.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note that full details of the use of each process on the mobile device are not included in this solution design, but can be obtained from the user guide, referenced in this document's appendices.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== C-ePOD Mobile Device Login ==&lt;br /&gt;
The application will have a customised style created for EBB Paper, which will include:&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* Numeric password entry at Login&lt;br /&gt;
* A defined Job List style.&lt;br /&gt;
* A defined Product List style.&lt;br /&gt;
* Removal of the ''Has this Delivery been checked'' check box on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=General Mobile Device Styling&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Login1.png|''Log In''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password (expected to be a PIN number), and the loads will be allocated to specific vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}. {{Note}} User IDs that are created automatically as part of the Standing Data creation at Load Import will be available for use, but will have a default password created. This password should be modified before use as a security precaution. It is expected that the username and password will be configured to be the TomTom WEBFLEET username and PIN. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver will log on to a device using the provided user name, password and vehicle. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks will be completed through the ''CALIDUS'' VEhub application and are not integrated into {{#var:System}}. ''CALIDUS'' VEhub is not within the scope of this document. There will be no vehicle checks implemented within ''CALIDUS'' ePOD for EBB Paper processes. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When log on is complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (and/or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The layout of the job list as demonstrated is acceptable to the customer, with one modification. The time will not be displayed on the Job List, through configuration of the style on the device. The defined elements are:&lt;br /&gt;
* The order number (Job Code)&lt;br /&gt;
* The job type&lt;br /&gt;
* The location (address name)&lt;br /&gt;
* The planned start date (no time)&lt;br /&gt;
* The post code from the location&lt;br /&gt;
&lt;br /&gt;
If the jobs have been consolidated together for one location (for example, all Loading jobs at the depot may be consolidated together for loading as one job), these will appear as 1 row on this job list, showing that there are multiple consignments that require completing together. The details of the individual jobs can be seen in the Job Details screen, following.&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline or background, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed. &lt;br /&gt;
&lt;br /&gt;
The jobs can be viewed in any sequence by clicking the line of the job - the device will display the Job Details page.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Refresh Load - Refresh the Load/Worklist from the server, to pick up any updates&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Log Out&lt;br /&gt;
*    Change Vehicle&lt;br /&gt;
*    Cancel Jobs&lt;br /&gt;
*    Consolidate Jobs&lt;br /&gt;
*    Deconsolidate Jobs&lt;br /&gt;
There are also some bug-reporting options available on this pop-up menu, which may be asked to be used from time to time by the OBSL or client support staff.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed (see the following for details on cancellation for the business units). &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
It is expected that re-sequencing of timed jobs will be allowed, but with a warning displayed to the drivers. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs if, for example, if quantities have been amended, products added, etc. It is noted that this should not occur.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Long-pressing against the line will display some options from a pop-up menu: &lt;br /&gt;
* ''Details'' - show the Job Details screen (following).&lt;br /&gt;
* ''Cancel'' - the selected job or jobs will be cancelled. The application will display an Exception screen and prompt for entry of a reason code indicating why this job was cancelled. &lt;br /&gt;
* ''Group Jobs Together'' - if configured for Consolidation, this option allows the selected job to be quickly grouped with another.&lt;br /&gt;
* ''Break Group'' - if configured and the selected row is a consolidated group of jobs, this option will break the group back into individual jobs and refresh the job list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details, on the Job Details screen. The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_JobDetail1.png|''Address &amp;amp; Contact''&lt;br /&gt;
File:REQ_343463_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several sections and tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The planned collection/delivery window for the job, including the times.&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
The ''Instructions'' tab will show instructions for the job, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The screen does not allow the user to contact the customer (through either text or phone) when using TomTom PRO or BRIDGE devices, as they do not allow telephony. Other devices will allow this and, in this case, the application will display appropriate icons to allow the drivers to accomplish this. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Cancelling a Job ===&lt;br /&gt;
For EBB Papers, the driver can cancel jobs by clicking the '''Cancel Job''' button on the job detail screen. &lt;br /&gt;
&lt;br /&gt;
This will call the cancellation screen where the user will be prompted to enter a reason why this job is being cancelled. The cancellation screen also allows the user to take a picture. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Whether or not a picture is required for a job cancellation is controlled by the 'Image Required for Cancellations' setting against the job group for the job. If this is set to 'All' or 'Job Only' then a picture must be taken to cancel a job, otherwise the picture is optional. If Job Cancellation is enabled, it is expected that the application will ''not'' be configured to require a photo, although one can still be taken if required.&lt;br /&gt;
&lt;br /&gt;
If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Navigation and Arriving ==&lt;br /&gt;
For EBB Paper, which will not have the orders sent to WEBFLEET, the TomTom NavApp will be sent the address by the C-ePOD app, and will commence immediate navigation to the address.&lt;br /&gt;
&lt;br /&gt;
The driver will select '''Start Job''' from the Job Details screen. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Delivery instructions are provided from several sources. These instructions will be concatenated in the Instructions shown above. If there have been instructions provided on the Job and the driver has not already switched to this tab to view the instructions, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that re-sequencing of jobs will be allowed for EBB Paper, but with a warning. If a job is attempted to be started, arrived or delivered out of sequence, the user will be told this at this point and must confirm to continue.&lt;br /&gt;
&lt;br /&gt;
Once started, the device will display a navigation button. Clicking this will start navigation through the installed navigation app. For TomTom devices, this will be the TomTom NavApp. For non-TomTom devices, the application will show whatever app is installed on the device to handle navigation, or the Google Maps website if there is none. The app will immediately calculate a route to the destination address.&lt;br /&gt;
&lt;br /&gt;
Once arrived at the destination, the driver will switch to the {{#var:System}} mobile application. This can be through the 'All apps' icon on the home screen or (expected to be) through a configured short-cut on the task bar for the TomTom devices. For standard Android devices, the app switcher can be used to switch back to the C-ePOD mobile application. &lt;br /&gt;
&lt;br /&gt;
The driver will then indicate arrival and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When clicking the button to start, arrive at or deliver the job, the application performs a check whether the job has been changed since it was loaded on the device, to ensure that the latest data is on the device for the job. If there are changes, the driver will be informed and the screen will refresh.&lt;br /&gt;
&lt;br /&gt;
The device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Radial Delivery Process ==&lt;br /&gt;
The driver process at a delivery point is:&lt;br /&gt;
* Arrive at site (recording time of arrival).&lt;br /&gt;
* Confirm delivery of product.&lt;br /&gt;
* Complete delivery (recording time off site)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Deliveries will consist of multiple loose products. &lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_343463_PDA_Delivery2.png|''Job Details Tab - Addresses''&lt;br /&gt;
File:REQ_343463_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
File:REQ_343463_PDA_Delivery4.png|''Notes Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
As part of the styling changes, the checkbox &amp;quot;Has this delivery been checked?&amp;quot; will be removed from the style.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Products'' tab, the device will show a list of the products to be delivered, which will be styled to show only the following elements:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Product Description&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, this list will also include a &amp;quot;UOM Qty&amp;quot; field, containing the decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc. In this case, the quantity of the item will always be 1.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--{{Warning}} The quantity on the device must take into account the pack size. This change is specified in more detail when changing quantity against a product.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Actions against the products can be activated by long-pressing against the row, and have the following actions:&lt;br /&gt;
* ''Deliver X''&lt;br /&gt;
* ''Change Quantity''&lt;br /&gt;
* ''Comments''&lt;br /&gt;
* ''Cancel''&lt;br /&gt;
* ''Info''&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery5.png|''Products Long-press Pop-up''&lt;br /&gt;
File:REQ_343463_PDA_Delivery6a.png|''Product Info Pop-up''&lt;br /&gt;
File:REQ_343463_PDA_Delivery6b.png|''Product Info Pop-up (More)''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, this Product Info pop-up will also include a &amp;quot;UOM Qty&amp;quot; field, containing the decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For information on the actions above, see the appropriate following sections.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all products have been confirmed as delivered or cancelled, the Delivery process will return to the Job Details tab, where a '''Complete''' button will be displayed, to complete the job. It is then possible to review the list of products delivered and change this if required. The list will display a border and status to indicate whether the products have been delivered:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Amber - Delivered with an amendment (changed quantity)&lt;br /&gt;
* Green - Delivered in full.&lt;br /&gt;
The status and the Planned and Actual quantity will be displayed for confirmation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the driver has confirmed that everything is complete and clicked the '''Complete''' button, this screen will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Delivering a Product ===&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* Clicking '''Deliver All''' on the ''Job Details'' tab.&lt;br /&gt;
&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system will be configured with &amp;quot;Deliver All&amp;quot; functionality. This can be used to mark all pending products as delivered. &lt;br /&gt;
This is most likely to be used by:&lt;br /&gt;
* Check all products and quantities from the information on the Product list.&lt;br /&gt;
* Cancelling or changing the quantity of any items with discrepancies, using the following processes.&lt;br /&gt;
* Clicking '''Deliver All''' for the remaining products on the list.&lt;br /&gt;
This process is likely to be used extensively for Trunk deliveries.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, products with a decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc will have a quantity set as 1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Changing a Product Quantity ===&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. &lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery7.png|''Exception - Change Product Quantity''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For clarification, the product code and description and the job and customer are also displayed here.&lt;br /&gt;
&lt;br /&gt;
The application will be ''not'' configured so that the driver is required to take a picture associated with this change of quantity.&lt;br /&gt;
&lt;br /&gt;
If zero is entered as the new quantity, the application will cancel the product and remove it from the product list. If the quantity is changed (and is not set to zero), the product will be marked as having the quantity entered delivered and will be removed from the product list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--{{Warning}} The quantity on the device must take into account the pack size. Therefore:&lt;br /&gt;
* If the system is configured to do so, and the pack size is to a value greater than 1, then the quantity will be displayed and entered as 2 quantities: Pack and Unit. The Pack value will be populated by the quantity integer divided by the pack size. The units will be the remainder of this calculation.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Product Quantity to use Pack Size&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
This change affects the display of the Product List and all changes made to Product Quantity.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, products with a decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc will have a quantity set as 1 and the quantity may only be changed to 0 (i.e. cancelled). Comments may be added, however.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Cancelling a Product ===&lt;br /&gt;
Where delivery of a product is refused, the driver process will be to cancel the product delivery with the pop-up option ''Cancel''. This is necessary, as the process will be to get the customer to sign for the non-delivery of the product.&lt;br /&gt;
&lt;br /&gt;
As with quantity change, the exception screen will be shown where the driver can enter the reason for the cancellation.&lt;br /&gt;
&lt;br /&gt;
The user will also be able to optionally take a picture associated with this cancellation.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Whether or not a picture is required for a product cancellation is controlled by the 'Image Required for Cancellations' setting against the job group for the job. If this is set to 'All' or 'Detail Only' then a picture must be taken to cancel a product, otherwise the picture is optional. &lt;br /&gt;
&lt;br /&gt;
The application will ''not'' be configured so that the driver is required to take a picture associated with cancellation of products.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Commenting a Product ===&lt;br /&gt;
This option will call the exception screen to allow the user to enter any comments against this product and optionally take a photo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery8.png|''Exception - Commenting on a product''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} Reason codes are the operation's to maintain and will be maintained only within C-ePOD, as they are never to be updated back to the ERP.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection (Returns) Process==&lt;br /&gt;
It is expected that, where planned returns of products are created, these collections will be interfaced to {{#var:system}} as Collection jobs. &lt;br /&gt;
&lt;br /&gt;
The collection process will be almost identical to that described above, substituting Collection instead of Delivery.&lt;br /&gt;
&lt;br /&gt;
When all products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature for Radial Collections and Deliveries, and for Desk Collections. &lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Signature1.png|''Customer Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_343463_PDA_Signature2.png|''Customer Signature and Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will by configuration be set to be blank and always required entry. The driver will be forced to enter one.&lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm.&lt;br /&gt;
* The quantity of products being collected/delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under or to the right of the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time and is expected to be finalised during implementation. These are currently expected to be:&lt;br /&gt;
* Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Unmanned locations or delivery out of hours may require that the driver sign PP for the customer, then taking photos to indicate the successful delivery. This Unmanned Location Process will be configured for this implementation. {{Note}} This is dependent on a development in progress at this time and is a dependency of this implementation.&lt;br /&gt;
&lt;br /&gt;
If a customer is not available, the driver can click the '''Unmanned Location''' button. The device will prompt for confirmation from the user that no customer is available to sign for the job.&lt;br /&gt;
&lt;br /&gt;
If confirmed, the device will prompt for the Driver signature, then prompt for a Job Photo, where at least one photo must be taken by the driver. This will be done regardless of any other configuration set against the jobs or site.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If driver signature is required, this displays very similarly to the customer signature above, with some differences:&lt;br /&gt;
* The standard collection T&amp;amp;Cs will not be shown. Special Driver T&amp;amp;Cs can be configured if required.&lt;br /&gt;
* The driver name will be pre-set from the logged-on driver and cannot be changed.&lt;br /&gt;
If driver signature is prompted for, it must be entered and cannot be skipped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Only for Unmanned Locations, the device will prompt for photos after completion of the driver signature. Note that this can be configured for every process if required, but is expected only to be prompted for for unmanned locations.&lt;br /&gt;
&lt;br /&gt;
The driver will be able to view the captured image or re-take the photos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Signature3.png|''Job Photo''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, etc) updated. The updates are sent whenever the driver has a viable data connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list. Any completed jobs can be optionally viewed again, by pressing the Menu button and choosing ''Show All Jobs''. The list can be made to show only outstanding jobs again by pressing the Menu button and choosing ''Show Outstanding Jobs''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
The device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Trunk Process ==&lt;br /&gt;
The above process of working through jobs from a Job List, selecting them and following the delivery process will be as per the above process.&lt;br /&gt;
&lt;br /&gt;
The Load for the Trunk drivers will be heavily consolidated, and will likely only contain 1 or 2 stops on the job list, with all jobs consolidated together at the depots.&lt;br /&gt;
&lt;br /&gt;
As mentioned, this delivery process is likely to make substantial use of the Deliver All process, to identify that all products are delivered to the depot successfully.&lt;br /&gt;
&lt;br /&gt;
When the driver delivers to the depot, the device will not prompt for any signatures, customer or driver. Instead, the process will return to the job list after confirmation that all product is delivered.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Trailer swapping is performed by EBB. More detail on this process is required, but at this time it is expected that this will not be part of the C-ePOD execution and will be handled manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Desk Collect Process ==&lt;br /&gt;
The above process of working through jobs from a Job List, selecting them and following the delivery process will be as per the above process.&lt;br /&gt;
&lt;br /&gt;
The Load for the depot operatives will be created one per depot per day, so all collections from the depot will be visible on that load. &lt;br /&gt;
&lt;br /&gt;
The device will show all jobs as delivery jobs with the destination address and contact information provided. The desk operative will request the information from the customer (reference, post code, etc) and select the job (or consolidated jobs, if there are many to be collected) from the job list. &lt;br /&gt;
&lt;br /&gt;
The depot operative will then Start the job and immediately click Arrive - no navigation is required. &lt;br /&gt;
&lt;br /&gt;
The depot operative will then check the goods and 'deliver' as the driver would. Deliver All functionality will be available.&lt;br /&gt;
&lt;br /&gt;
The device will prompt for the customer signature - no unmanned location process will be available.&lt;br /&gt;
&lt;br /&gt;
When the desk collection is complete, the job will be removed from the list, as normal.&lt;br /&gt;
&lt;br /&gt;
All collections for the day will remain on this load unless they are moved to another day by the interface. If any jobs remain on this load at the end of the day, the load should be cancelled or deassigned from the &amp;quot;WAREHOUSE&amp;quot; user using the Admin system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
Once jobs are completed, then will be confirmed with the C-ePOD server. After this confirmation, a POD/POC report may be produced.&lt;br /&gt;
&lt;br /&gt;
All photos taken by the driver during the execution of the job (i.e. at cancellation of product, change quantity of product, job photos) will be displayed in the C-ePOD Admin system for the administrative users to view. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The format attached to the job group is the format that will be produced from the Admin console and displayed for customers when requested through ''CALIDUS'' Portal. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== EBB Papers POD/POC ===&lt;br /&gt;
The format of the POD note has been prototyped to show capability. The format has been provided and the prototype is shown below: &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_343463_POD1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Prototype EBB Papers POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=EBB Paper POD/POC Format&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into {{#var:system}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Page Header, expected to be displayed on every page:&lt;br /&gt;
* EBB Logo - It is expected that this will be the logo taken from the site.&lt;br /&gt;
* &amp;quot;ELLIOTT BAXTER &amp;amp; ...&amp;quot; - fixed text.&lt;br /&gt;
* &amp;quot;Delivery Note&amp;quot; - fixed text, displaying &amp;quot;Collection Note&amp;quot; if the job is a collection.&lt;br /&gt;
* Mr EBB Logo - Fixed image in the format&lt;br /&gt;
* Invoice to - The address of the job's customer.&lt;br /&gt;
* &amp;quot;Delivery to&amp;quot; -  fixed text, displaying &amp;quot;Collection from&amp;quot; if the job is a collection.&lt;br /&gt;
* Delivery to - the job address if present, otherwise the customer address.&lt;br /&gt;
* &amp;quot;Delivery Instructions&amp;quot; - any job instructions provided.&lt;br /&gt;
* DATE - {{Warning}} the planned start date&lt;br /&gt;
* BRANCH - the owner of the job&lt;br /&gt;
* DEL DATE - {{Warning}} the actual start date&lt;br /&gt;
* DELIVERY TIME - {{Warning}} the planned start time&lt;br /&gt;
* S TIME - the arrival time&lt;br /&gt;
* E TIME - the actual end time&lt;br /&gt;
* DEL NOTE NO - the INV number (Job Code)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Product Details, expected to be shown on every page, expected to show up to 10 products per page:&lt;br /&gt;
* ORDER NO - the order number against the product&lt;br /&gt;
* QTY - The actual quantity of the product delivered, as confirmed by the driver.&lt;br /&gt;
* UNITS - the unit type against the product&lt;br /&gt;
* QUALITY &amp;amp; DESCRIPTION - The description of the product, and the FSC number (if provided) from the Long Description.&lt;br /&gt;
* PACKS - the pack size, from the case quantity.&lt;br /&gt;
* KGS - the weight of the product&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Footer, expected to be shown on all pages:&lt;br /&gt;
* Please be sure to check every...&amp;quot; - T&amp;amp;Cs from the job.&lt;br /&gt;
* Total Wgt - the sum of the weights of the delivered products.&lt;br /&gt;
* &amp;quot;Signature&amp;quot; - the customer signature if present.&lt;br /&gt;
* Print Name - the customer signatory, if present.&lt;br /&gt;
* Date - the actual end date.&lt;br /&gt;
* &amp;quot;Signed on behalf of&amp;quot; - based on the Unmanned Location process. If the driver signature is present, it will be displayed here.&lt;br /&gt;
* Print Name - the driver's name.&lt;br /&gt;
* Date - the actual end date.&lt;br /&gt;
* &amp;quot;NUMBER 1 FOR SERVICE&amp;quot; - fixed logo.&lt;br /&gt;
* &amp;quot;Only products identified ...&amp;quot; - fixed text.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Definition of the exact fields used for this report will be confirmed at functional specification stage, dependant on the interface mapping, specifically:&lt;br /&gt;
* The Dates and Times displayed&lt;br /&gt;
* The Branch&lt;br /&gt;
* The quantities displayed is dependent upon how C-ePOD will store these values, dependent on the decimal quantity change specified in this document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
At this time, there is no planned outbound interface of jobs completed in C-ePOD back to the ERP or TMS.&lt;br /&gt;
&lt;br /&gt;
At this time, there is no plan to automatically email the POD document to a customer or depot email address, or export the POD in PDF form to a document management system.&lt;br /&gt;
&lt;br /&gt;
However, these automatic emails or exports may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PDA users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=300px perrow=1&amp;gt;&lt;br /&gt;
File:REQ_336500_Admin_Load2.png|''Loads''&lt;br /&gt;
File:REQ_336500_Admin_Job1.png|''Jobs''&lt;br /&gt;
File:REQ_336500_Admin_Containers1.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted blue.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=300px perrow=1&amp;gt;&lt;br /&gt;
File:REQ_336500_Admin_UserTracking1.png|''User Tracking - Activities''&lt;br /&gt;
File:REQ_336500_Admin_UserTracking2.png|''User Tracking - Location''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
The C-Portal TTM module will primarily be used as an internal tracking tool.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' Portal is kept updated at all times by {{#var:System}} of all states of the loads and jobs, for example:&lt;br /&gt;
* The Trip itself.&lt;br /&gt;
* The Order itself.&lt;br /&gt;
* The sequence of the Order on the Trip&lt;br /&gt;
* When an order is in transit.&lt;br /&gt;
* When an order is collected and/or delivered.&lt;br /&gt;
* When an order is cancelled.&lt;br /&gt;
The messages identify any changes to quantities and reasons for these changes at all stages.&lt;br /&gt;
&lt;br /&gt;
The interface from C-ePOD to C-PORTAL TTM must account for trunks of orders to determine the from and to locations for the orders in TTM. The jobs will be linked through the Job Code to determine this.&lt;br /&gt;
&lt;br /&gt;
It is noted that failed delivery of orders on a day may result in the order being re-planned for the following day. In this case, the order will be interfaced on another vehicle and manifest file for the next day. C-ePOD must take this into account when sending data to TTM, to show that the order is being redelivered. This will be through a suffix &amp;quot;_Rx&amp;quot; to the transport reference, showing that this is a redelivery, attempt &amp;quot;x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires the purchase of a Nokia Maps account. As the system is hosted through OBS, this cost may be part of the hosting agreement.&lt;br /&gt;
&lt;br /&gt;
It is noted that the ETAs are currently calculated within ''CALIDUS'' Portal using a fixed dwell time at each location. The Portal will be updated (as part of the product improvement program) to calculate these times with the defined dwell time between stops taken into account. This will be made available to EBB Paper when developed.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Use defined Dwell time for ETA.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal that has potential to be used by EBB paper and their customers if required. This is by no means a full list of all functionality available within ''CALIDUS'' Portal - the user guide (referenced in the Appendices of this document) contains the full details of the available functionality.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrdEnqParms.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_GenEnqParms.png|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''General Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrdEnqResults1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. &lt;br /&gt;
&lt;br /&gt;
This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
[[file:REQ_339867_TTM_TripEnqParms.png|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_TripEnqResults.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. &lt;br /&gt;
&lt;br /&gt;
This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Details ====&lt;br /&gt;
[[file:REQ_339867_TTM_OrderDetail1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the 'Mapping' parameter against the User Group is set to 'Available' and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
*	Documents - Allows the upload/view of documents held in the Portal against the order. &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderDetail2.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Event Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_339867_TTM_OrderDetail3.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Info Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is noted that the Map screen could display the ETA and Planned times.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display ETA and Planned Time on Map screen&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrivals/Departures (Order Status) Screen ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries. The recommended screen is the Order Status screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderStatus1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
The C-Portal TTM module's Order Status screen can be configured to determine the window for delivery in a +/- number of minutes before the delivery end time. This is accessible from the burger menu on the screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderStatus2.png|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer (Order) Visibility Screen ===&lt;br /&gt;
This screen represents a combination of all the screens above in one place, to simplify access.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderVis1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Visibility Parameters and results''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Similar selection criteria to the Trip/Order Enquiries and Order Status screens can be accessed from the left-hand panel. Results will be shown on the right. &lt;br /&gt;
&lt;br /&gt;
When an order is selected, the Order Details page is displayed.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderVis2.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Visibility Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Clicking on each of the icons on the top of the page displays similar information to the other enquiry results screens. This screen also allows the user to maintain CRM-related notes and events.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderVis3.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Visibility CRM Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDCSAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there's only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Integration|Description=Bespoke Import Interface |Estimate=27|Notes=4&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Database|Description=Support decimal values in quantities|Estimate=20|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=VEhub|Area=Admin|Description=Improved searching on tables|Estimate=6|Notes=3&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Device|Description=General Mobile Device Styling |Estimate=1|Notes=4&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Reports|Description=EBB Paper POD/POC Format |Estimate=4|Notes=4&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=PORTAL|Area=ETAs|Description=Use defined Dwell time for ETAs |Estimate=4|Notes=3&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=PORTAL|Area=Map|Description=Display ETA and Planned time on map |Estimate=1|Notes=3&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#	Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#	This change is required only if the OBS systems are required to store decimal quantities. Note also that this change covers C-ePOD and C-PORTAL only. Should C-TMS be used as part of this solution, this must be evaluated for change separately.&lt;br /&gt;
# These changes will be developed as part of the product improvement program internally at OBS Logistics and will be made available when complete.&lt;br /&gt;
# These changes will be delivered as part of the contracted delivery at no additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD2&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=4.0&lt;br /&gt;
|RefDate1=21/07/2016&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=5.0&lt;br /&gt;
|RefDate2=23/12/2016&lt;br /&gt;
|Ref3=[[FS 291096 Interface with CALIDUS ePOD]]&lt;br /&gt;
|RefV3=1.1&lt;br /&gt;
|RefDate3=11/01/2017&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.9.20&lt;br /&gt;
|RefDate4=14/12/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rebecca Elliott&lt;br /&gt;
|Rev1Title=EBB Paper Representative&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_343463_EBB_Paper_Solution_Design&amp;diff=4592</id>
		<title>REQ 343463 EBB Paper Solution Design</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_343463_EBB_Paper_Solution_Design&amp;diff=4592"/>
		<updated>2017-06-23T13:28:57Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|EBB}}&lt;br /&gt;
{{#vardefine:ClientName|Elliott Baxter and Co}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|EBB Paper Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.5}}&lt;br /&gt;
{{#vardefine:Date|23rd June 2017}}&lt;br /&gt;
{{#vardefine:Reference|343463}}&lt;br /&gt;
{{#vardefine:Year|2017}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 08/06/2017 at the EBB Paper office in Farnborough, and amended with further details from emails of additional details and clarifications from the customer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the C-ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. TMS and ERP) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
* Modifications are required to the customer systems (ERP) to achieve the functionality described in this document.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Elliott Baxter is the leading family owned Independent Paper Supplier in the UK. Formed in 1922, the company is now into its fourth generation of Elliott ownership and management.&lt;br /&gt;
&lt;br /&gt;
Sales for last year were £138 million delivering a total of 177,000 tonnes. For comparison purposes, in 1980 sales were £4 million with 4800 tonnes of paper delivered.&lt;br /&gt;
&lt;br /&gt;
EBB Paper express delivery service is supported by a fleet of 90 delivery vehicles, which travel an average of 30,000 miles a year.&lt;br /&gt;
The Company makes over 1,500 deliveries per day, many of which are delivered same-day.&lt;br /&gt;
&lt;br /&gt;
EBB Paper stocks over 21,000 tonnes of paper. At current prices, the stock value is approximately £17 million.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Main Office Address:&lt;br /&gt;
&lt;br /&gt;
Farnborough Sales Office&amp;lt;br /&amp;gt;&lt;br /&gt;
Elliott Baxter and Co. Ltd.&amp;lt;br /&amp;gt;&lt;br /&gt;
Nexus Park&amp;lt;br /&amp;gt;&lt;br /&gt;
Lysons Avenue&amp;lt;br /&amp;gt;&lt;br /&gt;
Farnborough&amp;lt;br /&amp;gt;&lt;br /&gt;
Hampshire GU12 5QE&amp;lt;br /&amp;gt;&lt;br /&gt;
Tel: 01252 379900&amp;lt;br /&amp;gt;&lt;br /&gt;
Fax: 01252 379911&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are 9 distribution sites/sales offices:&lt;br /&gt;
* Birmingham&lt;br /&gt;
* Bristol&lt;br /&gt;
* Farnborough&lt;br /&gt;
* Glasgow&lt;br /&gt;
* Hemel Hempstead&lt;br /&gt;
* Manchester&lt;br /&gt;
* Newcastle&lt;br /&gt;
* Sheffield&lt;br /&gt;
* Thurrock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
* Paul Griffiths - IT Director - p.griffiths@ebbpaper.co.uk&lt;br /&gt;
* Rebecca Elliott - Project Sponsor - R.Elliott@ebbpaper.co.uk&lt;br /&gt;
* Terry Dixon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OBS Logistics Contacts:&lt;br /&gt;
* Matt Tipping - Project Manager - Matthew.Tipping@obs-logistics.com&lt;br /&gt;
* Matt Turner - Sales/Account Manager - Matthew.Turner@obs-logistics.com&lt;br /&gt;
* Warren Wright - Sales/''CALIDUS'' VEhub - Warren.Wright@obs-logistics.com&lt;br /&gt;
* Tony Walker - Solution Design - Tony.Walker@obs-logistics.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Existing System Processes ==&lt;br /&gt;
The core systems for the business are an externally-provided ERP (GP) and TMS (MSA), with OBS Logistics' systems as follows:&lt;br /&gt;
* ''CALIDUS'' ePOD - execution.&lt;br /&gt;
* ''CALIDUS'' VEhub - vehicle checks.&lt;br /&gt;
* ''CALIDUS'' Portal TTM - tracking.&lt;br /&gt;
* TomTom - navigation.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The original solution from the sales process was to include ''CALIDUS'' TMS and WMS products. At this time, the customer is not ready to replace TMS. However, the customer believes that immediate benefits can be derived from C-ePOD, C-VEhub and TTM without C-TMS or C-WMS.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operational processes will be:&lt;br /&gt;
*	Orders are entered into the ERP. &lt;br /&gt;
*	ERP interfaces the orders to TMS.&lt;br /&gt;
*	When orders are manifested, this creates an XML file with basic order and trip details.&lt;br /&gt;
*	A bespoke interface in ''CALIDUS'' ePOD will pick up the XML file and process this, retrieving additional details of the product lines and the addresses from the ERP.&lt;br /&gt;
*	{{#var:System}} executes jobs and captures the actual delivery quantities, additional information and signatures.&lt;br /&gt;
*	TomTom Nav is used for navigation to the destination.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The vehicles will be using the TomTom PRO 8xxx devices to run ''CALIDUS'' VEhub, the {{#var:System}} client application and the built-in TomTom navigation applications. The TomTom devices are expected to be ordered from Fleet Trak after the completion of the requirements session.&lt;br /&gt;
&lt;br /&gt;
The customer is providing the SIM cards, with Fleet Trak used to commission and install the devices.&lt;br /&gt;
&lt;br /&gt;
All application software will be downloaded through the TomTom MDM (Mobile Device Management) platform.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is recommended that the steps to commission the devices are as follows:&lt;br /&gt;
* Order the SIM cards.&lt;br /&gt;
* Order the devices.&lt;br /&gt;
* Fleet Trak to install the SIM cards in the devices and pre-load the applications.&lt;br /&gt;
&lt;br /&gt;
The software will be rolled out as follows:&lt;br /&gt;
* ''CALIDUS'' VEhub - All depots&lt;br /&gt;
* ''CALIDUS'' ePOD - Farnborough&lt;br /&gt;
* ''CALIDUS'' ePOD - Other depots&lt;br /&gt;
* ''CALIDUS'' TTM&lt;br /&gt;
&lt;br /&gt;
An updated project plan will be sent to the customer when available, detailing the timelines of all phases of the project, including the implementation and development phases.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The operation will expect to execute the following movement types:&lt;br /&gt;
* Trunk&lt;br /&gt;
* Radial Delivery&lt;br /&gt;
* Desk Collect&lt;br /&gt;
&lt;br /&gt;
Android tablets will be used to complete the customer (desk) collections through C-ePOD. These will be defined as a separate job group for configuration purposes. These will be performed through C-ePOD running on basic android devices, probably tablet, possibly Wi-Fi only.&lt;br /&gt;
&lt;br /&gt;
Desk collections will be interfaced to C-ePOD on a separate manifest per depot, but with a vehicle of &amp;quot;WAREHOUSE&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
There are also supplier direct to customer deliveries. As these are not executed through the EBB network, they will not be interfaced to C-ePOD.&lt;br /&gt;
&lt;br /&gt;
A list of branches and their details has been provided by the customer.&lt;br /&gt;
&lt;br /&gt;
Roughly 30 new delivery addresses are created each day.&lt;br /&gt;
&lt;br /&gt;
A list of email addresses for the branches is required&lt;br /&gt;
&lt;br /&gt;
Certain data is required for configuration of all OBS systems being installed, such as:&lt;br /&gt;
* Depots&lt;br /&gt;
* Drivers, including passwords/PINs&lt;br /&gt;
* Vehicles, including Registration, Make and Model&lt;br /&gt;
* Trailers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lot-controlled items are delivered in this operation. Details are to be provided by the customer, including examples. It is believed that, at this time, this is not a go-live requirements for the implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Further example files have been provided for trunks. These need to be assessed and detailed in the functional specification stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
OBS Logistics have been requested to write the interface in order to speed up the delivery of the project.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Bespoke Import Interface&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The loads are interfaced from MSA in a custom XML format in a flat-file, after the routes are planned. A button is pressed when the manifest is finished planning to create this file.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The manifests are used for picking. If additional orders are added to the vehicle (add-ons), the orders are placed on a separate manifest, for the same vehicle on the same day. This is because adding orders to an existing manifest (which is possible) will confuse the pickers and potentially result in double picks. This quite frequently on radial deliveries, and is expected to happen every day on trunk loads.&lt;br /&gt;
&lt;br /&gt;
This file does not contain all the information required to create the jobs. Predominantly, address information and product case details are missing from this interface file.&lt;br /&gt;
&lt;br /&gt;
The remaining information is to be accessed directly from a view on the ERP system, running a SQL Server database.&lt;br /&gt;
&lt;br /&gt;
The interface created will be triggered by the receipt of the TMS XML file. The processing of the jobs on this file will retrieve the information on the orders from a view available in the ERP, through direct connection to this database. &lt;br /&gt;
&lt;br /&gt;
{{Note}} The C-ePOD system will be hosted by OBS, whilst the ERP is hosted by the customer. This interface will need to connect to this ERP to access the view to get the job details. There is a technical requirement to have the two servers connected, which will require action by OBS technical services and the customer in collaboration.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A scheduled import process will be created on the system, running at a timed interval.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There will be multiple manifests sent for the same vehicle on the same day. These must be combined into a single manifest on C-ePOD. {{Note}} In order for the interface to successfully combine manifests, it is assumed that there will be one load required per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Manifests (that create Loads in C-ePOD) will be allocated to a vehicle and/or driver. This allows the loads to be created and allocated to a driver for completion. Note however that, once created, the {{#var:System}} Admin system (Load or User screens) may be used to change allocation of vehicles and drivers on a load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The interface will create loads, one per vehicle per depot (Site) per day.&lt;br /&gt;
&lt;br /&gt;
The system will be configured to create standing data from the received import information, such as:&lt;br /&gt;
* Drivers&lt;br /&gt;
* Customers (Invoice Addresses)&lt;br /&gt;
* Vehicles&lt;br /&gt;
As noted above, it is expected that this data will be created at implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sites will be created for each depot, following the encoding within the customer systems:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!GP Site ID	!!GP ADI Site ID	!!Fleet name&lt;br /&gt;
|-&lt;br /&gt;
|03 CHARLTO	||903 ADI	||Thurrock&lt;br /&gt;
|-&lt;br /&gt;
|04 FARNBO	||904 ADI	||Farnborough&lt;br /&gt;
|-&lt;br /&gt;
|05 WATFORD	||905 ADI	||Watford&lt;br /&gt;
|-&lt;br /&gt;
|09 YEOVIL	||909 ADI	||BRISTOL&lt;br /&gt;
|-&lt;br /&gt;
|10 BIRMING	||910 ADI	||Birmingham&lt;br /&gt;
|-&lt;br /&gt;
|11 MANCHES	||911 ADI	||Manchester&lt;br /&gt;
|-&lt;br /&gt;
|12 SHEFFIE	||912 ADI	||Sheffield&lt;br /&gt;
|-&lt;br /&gt;
|13 NEWCAST	||913 ADI	||Newcastle&lt;br /&gt;
|-&lt;br /&gt;
|14 GLASGOW	||914 ADI	||Glasgow&lt;br /&gt;
|-&lt;br /&gt;
|31 FELIXST	||931 ADI	||Felixstowe&lt;br /&gt;
|-&lt;br /&gt;
|32 MAREXPO	||932 ADI	||Marexport&lt;br /&gt;
|}&lt;br /&gt;
{{Note}} The site is taken from the Originating Depot. The ADI site ID will be considered to be the GP site ID in this interface. Any manifests in the file for sites not in this list will not have loads or jobs created for them.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The interface must identify the Site (the executing depot) and the Owner (the originator). Confirmation is required as to what data from the interface files contain this information. This may be confirmed at functional specification stage for this interface change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The manifest on which a job is received will be stored against the job in C-ePOD, as well as any of the other customer references. This will be used by the interface to determine if the manifest has been received before. If this is the case, and the manifest has been modified (i.e. orders or products removed or added), this will be used by the system to determine whether jobs are to be added to the created load for this vehicle and day, or whether the jobs will be removed (deleted). Products not on the jobs updated will be removed, and new products added.&lt;br /&gt;
&lt;br /&gt;
The jobs will be placed on the Load in the order in which they are received in the manifest file. If a further manifest is received for this vehicle, the jobs will be added to the end of the manifest. A hard sequence will be generated for the jobs on the manifest.&lt;br /&gt;
&lt;br /&gt;
In the interface, orders for the same customer code will be linked together and consolidated on the device, ensuring that only one delivery instruction is present, although both orders will be maintained.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are many different types of orders. The type is identified through the alpha prefix against the order. The main types are below:&lt;br /&gt;
* INV - Delivery order&lt;br /&gt;
* CAL - Call-off. Considered to be the same as an INV order.&lt;br /&gt;
* ISTIN - transfer of stock between depots (inter-warehouse transfer or IWT) &lt;br /&gt;
* RTN - Collection from customer.&lt;br /&gt;
&lt;br /&gt;
Job Instructions should be populated with Order comments (OrdComm) and Delivery Instructions (DelIns) concatenated together.&lt;br /&gt;
&lt;br /&gt;
When receiving jobs through the interface, the invoice (customer) address will be updated, if this has changed. EBB Paper have confirmed that the Invoice address changing is as expected. It has been confirmed that any previous jobs with this invoice (customer) address will from that point show the new invoice address, and this is acceptable to EBB Paper.&lt;br /&gt;
&lt;br /&gt;
Planned delivery times will be maintained on each job created. &lt;br /&gt;
&lt;br /&gt;
There are essentially 2 types of order:&lt;br /&gt;
* A non-timed delivery will have a cut off of 14:00&lt;br /&gt;
* Timed Delivery&lt;br /&gt;
&lt;br /&gt;
{{Note}} Development work is required with GP to allow the EBB Paper sales team to maintain times on the order. This will be an EBB Paper task to complete.&lt;br /&gt;
&lt;br /&gt;
The start and end planned time (in columns &amp;quot;S Time&amp;quot; and &amp;quot;E Time&amp;quot;) will be used for the start and end planned time for the jobs. If these are not present, the DelTime column will be used. If this is not present, the planned start and end times will be defaulted to 0600 and 1400 respectively.&lt;br /&gt;
&lt;br /&gt;
All jobs will be set with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be Job Group configurations for the different job types, as they will have different execution processes on the mobile devices:&lt;br /&gt;
* Trunk&lt;br /&gt;
** No Driver or Customer Signature&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Radial Collection/Delivery&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
* Desk Collect&lt;br /&gt;
** Customer Signature&lt;br /&gt;
** Unmanned Location Signature will ''not'' be enabled&lt;br /&gt;
** Deliver All functionality enabled&lt;br /&gt;
For all jobs groups, it is expected that the following will also be configured:&lt;br /&gt;
* No Job Photo&lt;br /&gt;
* EBB Paper POD format&lt;br /&gt;
* Terms and Conditions is expected to be set to:&lt;br /&gt;
** Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The products will be created on each job created with the details taken from the ERP. The details expected to be received are:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description - stored as a truncated value&lt;br /&gt;
* FSC number (optional) - stored with the full product description in the long description field.&lt;br /&gt;
* Pack Size&lt;br /&gt;
* UOM&lt;br /&gt;
* Weight&lt;br /&gt;
* Quantity&lt;br /&gt;
&lt;br /&gt;
The pack size of the product will be taken from the ERP view in the interface. This will come from Sell Pack in the interface. It is noted that there is also a Purch Pack field, and it is confirmed that C-ePOD has no place to store this information.&lt;br /&gt;
&lt;br /&gt;
UOFM is the defined unit of measure of the product being delivered. There are multiple products UOMs that require the quantity to be decimal (for example, Weight (TONNES), Length (LINEAR METRES), Area (METRES SQUARED). For these products, the import process will set the quantity to 1 and store the actual quantity in another field, which will be displayed on the mobile device. &lt;br /&gt;
&lt;br /&gt;
The following is a list of the UOFMs known at this time and the proposals to handle them:&lt;br /&gt;
*	1 - always 1 - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	1000 - quantity will be multiplied by 1000.&lt;br /&gt;
*	BOTTLE - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	BOX - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	CHARGE - Excluded - this is a delivery charge. No line will be created.&lt;br /&gt;
*	EACH - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ENVS - Envelopes. Quantity will be multiplied by 1000. &lt;br /&gt;
*	MISC - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	ROLL - always integer value - accepted as such, but rounded up if decimal.&lt;br /&gt;
*	SETS -Multi-part paper. Quantity will be multiplied by 1000.&lt;br /&gt;
*	SHEETS - quantity will be multiplied by 1000&lt;br /&gt;
*	TONNE - quantity will be set to 1. Quantity in file will be put in Item Type field. &lt;br /&gt;
*	METRES SQUARED - quantity will be set to 1. Quantity in file will be put in Item Type field.&lt;br /&gt;
*	LINEAR METRES - quantity will be set to 1. Quantity in file will be put in Item Type field.&lt;br /&gt;
&lt;br /&gt;
There are then essentially 4 rules:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
!RULE	!!UOMS&lt;br /&gt;
|-&lt;br /&gt;
|Multiply by 1000 	||1000, ENVS, SETS, SHEETS&lt;br /&gt;
|-&lt;br /&gt;
|Round up to nearest integer value	||1, BOTTLE, BOX, EACH, MISC, ROLL&lt;br /&gt;
|-&lt;br /&gt;
|Exclude	||CHARGE&lt;br /&gt;
|-&lt;br /&gt;
|Set to 1 and put in Item Type field	||TONNE, METRES SQUARED, LINEAR METRES&lt;br /&gt;
|}&lt;br /&gt;
Any not on the list would follow the last rule (i.e. set quantity to 1 and put the quantity in the item type)&lt;br /&gt;
&lt;br /&gt;
Further analysis is required on this and confirmation from the customer has been requested. If not appropriate, development work must be undertaken to change C-ePOD and C-PORTAL to handle decimal values.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Support decimal values in quantities&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Trunk movements are defined as movements between two depots (sites) defined in the list above.&lt;br /&gt;
&lt;br /&gt;
Trunk orders created will include the products - there could up 100 or more products on the trunk moves. &lt;br /&gt;
&lt;br /&gt;
{{Note}} If the trunk of an order is cancelled, the radial delivery of the job will not be planned or manifested and therefore C-ePOD will not receive it, so it will never be executed. This is as expected - no further functionality within C-ePOD is required to attempt to cancel onward deliveries of the same order if the prior delivery is cancelled.&lt;br /&gt;
&lt;br /&gt;
For deliveries that are trunked and then refused by the customer, stock is either held at the delivering depot (if it stocks this product) or a separate IWT order is generated to transfer the stock back to the originating depot. This will generate an order for C-ePOD, which will be treated as any other trunk or IWT order.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface (Admin console) and a mobile device application for use in completing jobs, consisting of pick-ups (collections) and drop-offs (deliveries).&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} Administration console is a web-based application that handles all of the administrative side of the C-ePOD devices. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Access to this Admin system is through a web browser, connecting to a provided URL for the system. Access to this URL must be allowed from the EBB Paper network for all users that require it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users and Vehicles.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To track progress against the Loads, Jobs, Vehicles and Users.&lt;br /&gt;
* To print or email a POD/POC.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is confirmed that ''all'' Loads will be assigned to Vehicles through the ERP import interface. &lt;br /&gt;
&lt;br /&gt;
A facility to manually assign Loads to drivers and vehicles for problem-solving purposes.&lt;br /&gt;
&lt;br /&gt;
The resource allocation may be managed through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_336500_Admin_Users3.png|border|600px]]&lt;br /&gt;
[[file:REQ_336500_Admin_Users1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_336500_Admin_Load3.png|border|600px]]&lt;br /&gt;
[[file:REQ_336500_Admin_Load2.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If loads are created without a driver assigned (vehicle will always be assigned through the interface), the driver will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ''CALIDUS'' VEhub ==&lt;br /&gt;
The ''CALIDUS'' VEhub system is used to:&lt;br /&gt;
* Capture Vehicle Checks&lt;br /&gt;
* Asset Tagging at locations&lt;br /&gt;
* Capture Accident Reports&lt;br /&gt;
&lt;br /&gt;
{{Note}} ''CALIDUS'' VEhub is already configured for EBB Paper use and is ready to be used. It is likely that this will be rolled out to all depots as soon as possible. However, note that C-VEhub is not part of this solution design document, and will configured as part of the implementation of this project.&lt;br /&gt;
&lt;br /&gt;
As part of this project, C-VEhub will be created for each depot to access their vehicles and the data entered through the mobile application. C-VEhub Admin access will be provided for every branch.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Access to this Admin system is through a web browser, connecting to a provided URL for the system. Access to this URL must be allowed from the EBB Paper network for all users that require it.&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password (expected to be a PIN number). The users and their passwords must be configured within C-VEhub. It is expected that the username and password will be configured to be the TomTom WEBFLEET username and PIN. &lt;br /&gt;
&lt;br /&gt;
C-VEhub will be configured to send email alerts of every defective vehicle check completed to the defined email addresses for each depot.&lt;br /&gt;
&lt;br /&gt;
It is noted the Vehicle Checks table (and all other tables in this system) will be modified for improved searching.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Improved searching on tables&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is noted that the insurance cover note will be provided to the drivers through a cloud-enabled repository, such as DropBox.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== C-ePOD Mobile Device Application ==&lt;br /&gt;
The mobile device application will be used to execute all types of trips executed by the depots, namely:&lt;br /&gt;
* Radial Deliveries and customer collections&lt;br /&gt;
* Trunk trips&lt;br /&gt;
* Desk Collections&lt;br /&gt;
The below sections detail the flow of the radial deliveries predominantly, then indicate how these processes will be used to execute other trip types.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note that full details of the use of each process on the mobile device are not included in this solution design, but can be obtained from the user guide, referenced in this document's appendices.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== C-ePOD Mobile Device Login ==&lt;br /&gt;
The application will have a customised style created for EBB Paper, which will include:&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* Numeric password entry at Login&lt;br /&gt;
* A defined Job List style.&lt;br /&gt;
* A defined Product List style.&lt;br /&gt;
* Removal of the ''Has this Delivery been checked'' check box on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=General Mobile Device Styling&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Login1.png|''Log In''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password (expected to be a PIN number), and the loads will be allocated to specific vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}. {{Note}} User IDs that are created automatically as part of the Standing Data creation at Load Import will be available for use, but will have a default password created. This password should be modified before use as a security precaution. It is expected that the username and password will be configured to be the TomTom WEBFLEET username and PIN. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver will log on to a device using the provided user name, password and vehicle. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks will be completed through the ''CALIDUS'' VEhub application and are not integrated into {{#var:System}}. ''CALIDUS'' VEhub is not within the scope of this document. There will be no vehicle checks implemented within ''CALIDUS'' ePOD for EBB Paper processes. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When log on is complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (and/or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The layout of the job list as demonstrated is acceptable to the customer, with one modification. The time will not be displayed on the Job List, through configuration of the style on the device. The defined elements are:&lt;br /&gt;
* The order number (Job Code)&lt;br /&gt;
* The job type&lt;br /&gt;
* The location (address name)&lt;br /&gt;
* The planned start date (no time)&lt;br /&gt;
* The post code from the location&lt;br /&gt;
&lt;br /&gt;
If the jobs have been consolidated together for one location (for example, all Loading jobs at the depot may be consolidated together for loading as one job), these will appear as 1 row on this job list, showing that there are multiple consignments that require completing together. The details of the individual jobs can be seen in the Job Details screen, following.&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline or background, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed. &lt;br /&gt;
&lt;br /&gt;
The jobs can be viewed in any sequence by clicking the line of the job - the device will display the Job Details page.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Refresh Load - Refresh the Load/Worklist from the server, to pick up any updates&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Log Out&lt;br /&gt;
*    Change Vehicle&lt;br /&gt;
*    Cancel Jobs&lt;br /&gt;
*    Consolidate Jobs&lt;br /&gt;
*    Deconsolidate Jobs&lt;br /&gt;
There are also some bug-reporting options available on this pop-up menu, which may be asked to be used from time to time by the OBSL or client support staff.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed (see the following for details on cancellation for the business units). &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
It is expected that re-sequencing of timed jobs will be allowed, but with a warning displayed to the drivers. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs if, for example, if quantities have been amended, products added, etc. It is noted that this should not occur.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Long-pressing against the line will display some options from a pop-up menu: &lt;br /&gt;
* ''Details'' - show the Job Details screen (following).&lt;br /&gt;
* ''Cancel'' - the selected job or jobs will be cancelled. The application will display an Exception screen and prompt for entry of a reason code indicating why this job was cancelled. &lt;br /&gt;
* ''Group Jobs Together'' - if configured for Consolidation, this option allows the selected job to be quickly grouped with another.&lt;br /&gt;
* ''Break Group'' - if configured and the selected row is a consolidated group of jobs, this option will break the group back into individual jobs and refresh the job list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details, on the Job Details screen. The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_JobDetail1.png|''Address &amp;amp; Contact''&lt;br /&gt;
File:REQ_343463_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several sections and tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The planned collection/delivery window for the job, including the times.&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
The ''Instructions'' tab will show instructions for the job, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The screen does not allow the user to contact the customer (through either text or phone) when using TomTom PRO or BRIDGE devices, as they do not allow telephony. Other devices will allow this and, in this case, the application will display appropriate icons to allow the drivers to accomplish this. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Cancelling a Job ===&lt;br /&gt;
For EBB Papers, the driver can cancel jobs by clicking the '''Cancel Job''' button on the job detail screen. &lt;br /&gt;
&lt;br /&gt;
This will call the cancellation screen where the user will be prompted to enter a reason why this job is being cancelled. The cancellation screen also allows the user to take a picture. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Whether or not a picture is required for a job cancellation is controlled by the 'Image Required for Cancellations' setting against the job group for the job. If this is set to 'All' or 'Job Only' then a picture must be taken to cancel a job, otherwise the picture is optional. If Job Cancellation is enabled, it is expected that the application will ''not'' be configured to require a photo, although one can still be taken if required.&lt;br /&gt;
&lt;br /&gt;
If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Navigation and Arriving ==&lt;br /&gt;
For EBB Paper, which will not have the orders sent to WEBFLEET, the TomTom NavApp will be sent the address by the C-ePOD app, and will commence immediate navigation to the address.&lt;br /&gt;
&lt;br /&gt;
The driver will select '''Start Job''' from the Job Details screen. &lt;br /&gt;
&lt;br /&gt;
{{Note}} Delivery instructions are provided from several sources. These instructions will be concatenated in the Instructions shown above. If there have been instructions provided on the Job and the driver has not already switched to this tab to view the instructions, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that re-sequencing of jobs will be allowed for EBB Paper, but with a warning. If a job is attempted to be started, arrived or delivered out of sequence, the user will be told this at this point and must confirm to continue.&lt;br /&gt;
&lt;br /&gt;
Once started, the device will display a navigation button. Clicking this will start navigation through the installed navigation app. For TomTom devices, this will be the TomTom NavApp. For non-TomTom devices, the application will show whatever app is installed on the device to handle navigation, or the Google Maps website if there is none. The app will immediately calculate a route to the destination address.&lt;br /&gt;
&lt;br /&gt;
Once arrived at the destination, the driver will switch to the {{#var:System}} mobile application. This can be through the 'All apps' icon on the home screen or (expected to be) through a configured short-cut on the task bar for the TomTom devices. For standard Android devices, the app switcher can be used to switch back to the C-ePOD mobile application. &lt;br /&gt;
&lt;br /&gt;
The driver will then indicate arrival and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When clicking the button to start, arrive at or deliver the job, the application performs a check whether the job has been changed since it was loaded on the device, to ensure that the latest data is on the device for the job. If there are changes, the driver will be informed and the screen will refresh.&lt;br /&gt;
&lt;br /&gt;
The device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Radial Delivery Process ==&lt;br /&gt;
The driver process at a delivery point is:&lt;br /&gt;
* Arrive at site (recording time of arrival).&lt;br /&gt;
* Confirm delivery of product.&lt;br /&gt;
* Complete delivery (recording time off site)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Deliveries will consist of multiple loose products. &lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_343463_PDA_Delivery2.png|''Job Details Tab - Addresses''&lt;br /&gt;
File:REQ_343463_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
File:REQ_343463_PDA_Delivery4.png|''Notes Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
As part of the styling changes, the checkbox &amp;quot;Has this delivery been checked?&amp;quot; will be removed from the style.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Products'' tab, the device will show a list of the products to be delivered, which will be styled to show only the following elements:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Product Description&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, this list will also include a &amp;quot;UOM Qty&amp;quot; field, containing the decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc. In this case, the quantity of the item will always be 1.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--{{Warning}} The quantity on the device must take into account the pack size. This change is specified in more detail when changing quantity against a product.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Actions against the products can be activated by long-pressing against the row, and have the following actions:&lt;br /&gt;
* ''Deliver X''&lt;br /&gt;
* ''Change Quantity''&lt;br /&gt;
* ''Comments''&lt;br /&gt;
* ''Cancel''&lt;br /&gt;
* ''Info''&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery5.png|''Products Long-press Pop-up''&lt;br /&gt;
File:REQ_343463_PDA_Delivery6a.png|''Product Info Pop-up''&lt;br /&gt;
File:REQ_343463_PDA_Delivery6b.png|''Product Info Pop-up (More)''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, this Product Info pop-up will also include a &amp;quot;UOM Qty&amp;quot; field, containing the decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For information on the actions above, see the appropriate following sections.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all products have been confirmed as delivered or cancelled, the Delivery process will return to the Job Details tab, where a '''Complete''' button will be displayed, to complete the job. It is then possible to review the list of products delivered and change this if required. The list will display a border and status to indicate whether the products have been delivered:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Amber - Delivered with an amendment (changed quantity)&lt;br /&gt;
* Green - Delivered in full.&lt;br /&gt;
The status and the Planned and Actual quantity will be displayed for confirmation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the driver has confirmed that everything is complete and clicked the '''Complete''' button, this screen will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Delivering a Product ===&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* Clicking '''Deliver All''' on the ''Job Details'' tab.&lt;br /&gt;
&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system will be configured with &amp;quot;Deliver All&amp;quot; functionality. This can be used to mark all pending products as delivered. &lt;br /&gt;
This is most likely to be used by:&lt;br /&gt;
* Check all products and quantities from the information on the Product list.&lt;br /&gt;
* Cancelling or changing the quantity of any items with discrepancies, using the following processes.&lt;br /&gt;
* Clicking '''Deliver All''' for the remaining products on the list.&lt;br /&gt;
This process is likely to be used extensively for Trunk deliveries.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, products with a decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc will have a quantity set as 1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Changing a Product Quantity ===&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. &lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery7.png|''Exception - Change Product Quantity''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For clarification, the product code and description and the job and customer are also displayed here.&lt;br /&gt;
&lt;br /&gt;
The application will be ''not'' configured so that the driver is required to take a picture associated with this change of quantity.&lt;br /&gt;
&lt;br /&gt;
If zero is entered as the new quantity, the application will cancel the product and remove it from the product list. If the quantity is changed (and is not set to zero), the product will be marked as having the quantity entered delivered and will be removed from the product list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--{{Warning}} The quantity on the device must take into account the pack size. Therefore:&lt;br /&gt;
* If the system is configured to do so, and the pack size is to a value greater than 1, then the quantity will be displayed and entered as 2 quantities: Pack and Unit. The Pack value will be populated by the quantity integer divided by the pack size. The units will be the remainder of this calculation.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Product Quantity to use Pack Size&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
This change affects the display of the Product List and all changes made to Product Quantity.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} If confirmed, products with a decimal value for UOFMs such as TONNES, LINEAR METRES, METRES SQUARED, etc will have a quantity set as 1 and the quantity may only be changed to 0 (i.e. cancelled). Comments may be added, however.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Cancelling a Product ===&lt;br /&gt;
Where delivery of a product is refused, the driver process will be to cancel the product delivery with the pop-up option ''Cancel''. This is necessary, as the process will be to get the customer to sign for the non-delivery of the product.&lt;br /&gt;
&lt;br /&gt;
As with quantity change, the exception screen will be shown where the driver can enter the reason for the cancellation.&lt;br /&gt;
&lt;br /&gt;
The user will also be able to optionally take a picture associated with this cancellation.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Whether or not a picture is required for a product cancellation is controlled by the 'Image Required for Cancellations' setting against the job group for the job. If this is set to 'All' or 'Detail Only' then a picture must be taken to cancel a product, otherwise the picture is optional. &lt;br /&gt;
&lt;br /&gt;
The application will ''not'' be configured so that the driver is required to take a picture associated with cancellation of products.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Commenting a Product ===&lt;br /&gt;
This option will call the exception screen to allow the user to enter any comments against this product and optionally take a photo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Delivery8.png|''Exception - Commenting on a product''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} Reason codes are the operation's to maintain and will be maintained only within C-ePOD, as they are never to be updated back to the ERP.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection (Returns) Process==&lt;br /&gt;
It is expected that, where planned returns of products are created, these collections will be interfaced to {{#var:system}} as Collection jobs. &lt;br /&gt;
&lt;br /&gt;
The collection process will be almost identical to that described above, substituting Collection instead of Delivery.&lt;br /&gt;
&lt;br /&gt;
When all products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature for Radial Collections and Deliveries, and for Desk Collections. &lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Signature1.png|''Customer Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_343463_PDA_Signature2.png|''Customer Signature and Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will by configuration be set to be blank and always required entry. The driver will be forced to enter one.&lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm.&lt;br /&gt;
* The quantity of products being collected/delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under or to the right of the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time and is expected to be finalised during implementation. These are currently expected to be:&lt;br /&gt;
* Please be sure to check every consignment before signing. All sales are subject to Conditions of Sale, a copy of which is at the back of the EBB Price List and on our website http://www.ebbpaper.co.uk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Unmanned locations or delivery out of hours may require that the driver sign PP for the customer, then taking photos to indicate the successful delivery. This Unmanned Location Process will be configured for this implementation. {{Note}} This is dependent on a development in progress at this time and is a dependency of this implementation.&lt;br /&gt;
&lt;br /&gt;
If a customer is not available, the driver can click the '''Unmanned Location''' button. The device will prompt for confirmation from the user that no customer is available to sign for the job.&lt;br /&gt;
&lt;br /&gt;
If confirmed, the device will prompt for the Driver signature, then prompt for a Job Photo, where at least one photo must be taken by the driver. This will be done regardless of any other configuration set against the jobs or site.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If driver signature is required, this displays very similarly to the customer signature above, with some differences:&lt;br /&gt;
* The standard collection T&amp;amp;Cs will not be shown. Special Driver T&amp;amp;Cs can be configured if required.&lt;br /&gt;
* The driver name will be pre-set from the logged-on driver and cannot be changed.&lt;br /&gt;
If driver signature is prompted for, it must be entered and cannot be skipped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Only for Unmanned Locations, the device will prompt for photos after completion of the driver signature. Note that this can be configured for every process if required, but is expected only to be prompted for for unmanned locations.&lt;br /&gt;
&lt;br /&gt;
The driver will be able to view the captured image or re-take the photos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=300px heights=210px perrow=2&amp;gt;&lt;br /&gt;
File:REQ_343463_PDA_Signature3.png|''Job Photo''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, etc) updated. The updates are sent whenever the driver has a viable data connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list. Any completed jobs can be optionally viewed again, by pressing the Menu button and choosing ''Show All Jobs''. The list can be made to show only outstanding jobs again by pressing the Menu button and choosing ''Show Outstanding Jobs''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
The device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Trunk Process ==&lt;br /&gt;
The above process of working through jobs from a Job List, selecting them and following the delivery process will be as per the above process.&lt;br /&gt;
&lt;br /&gt;
The Load for the Trunk drivers will be heavily consolidated, and will likely only contain 1 or 2 stops on the job list, with all jobs consolidated together at the depots.&lt;br /&gt;
&lt;br /&gt;
As mentioned, this delivery process is likely to make substantial use of the Deliver All process, to identify that all products are delivered to the depot successfully.&lt;br /&gt;
&lt;br /&gt;
When the driver delivers to the depot, the device will not prompt for any signatures, customer or driver. Instead, the process will return to the job list after confirmation that all product is delivered.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Trailer swapping is performed by EBB. More detail on this process is required, but at this time it is expected that this will not be part of the C-ePOD execution and will be handled manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Desk Collect Process ==&lt;br /&gt;
The above process of working through jobs from a Job List, selecting them and following the delivery process will be as per the above process.&lt;br /&gt;
&lt;br /&gt;
The Load for the depot operatives will be created one per depot per day, so all collections from the depot will be visible on that load. &lt;br /&gt;
&lt;br /&gt;
The device will show all jobs as delivery jobs with the destination address and contact information provided. The desk operative will request the information from the customer (reference, post code, etc) and select the job (or consolidated jobs, if there are many to be collected) from the job list. &lt;br /&gt;
&lt;br /&gt;
The depot operative will then Start the job and immediately click Arrive - no navigation is required. &lt;br /&gt;
&lt;br /&gt;
The depot operative will then check the goods and 'deliver' as the driver would. Deliver All functionality will be available.&lt;br /&gt;
&lt;br /&gt;
The device will prompt for the customer signature - no unmanned location process will be available.&lt;br /&gt;
&lt;br /&gt;
When the desk collection is complete, the job will be removed from the list, as normal.&lt;br /&gt;
&lt;br /&gt;
All collections for the day will remain on this load unless they are moved to another day by the interface. If any jobs remain on this load at the end of the day, the load should be cancelled or deassigned from the &amp;quot;WAREHOUSE&amp;quot; user using the Admin system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
Once jobs are completed, then will be confirmed with the C-ePOD server. After this confirmation, a POD/POC report may be produced.&lt;br /&gt;
&lt;br /&gt;
All photos taken by the driver during the execution of the job (i.e. at cancellation of product, change quantity of product, job photos) will be displayed in the C-ePOD Admin system for the administrative users to view. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The format attached to the job group is the format that will be produced from the Admin console and displayed for customers when requested through ''CALIDUS'' Portal. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== EBB Papers POD/POC ===&lt;br /&gt;
The format of the POD note has been prototyped to show capability. The format has been provided and the prototype is shown below: &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_343463_POD1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Prototype EBB Papers POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=EBB Paper POD/POC Format&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into {{#var:system}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Page Header, expected to be displayed on every page:&lt;br /&gt;
* EBB Logo - It is expected that this will be the logo taken from the site.&lt;br /&gt;
* &amp;quot;ELLIOTT BAXTER &amp;amp; ...&amp;quot; - fixed text.&lt;br /&gt;
* &amp;quot;Delivery Note&amp;quot; - fixed text, displaying &amp;quot;Collection Note&amp;quot; if the job is a collection.&lt;br /&gt;
* Mr EBB Logo - Fixed image in the format&lt;br /&gt;
* Invoice to - The address of the job's customer.&lt;br /&gt;
* &amp;quot;Delivery to&amp;quot; -  fixed text, displaying &amp;quot;Collection from&amp;quot; if the job is a collection.&lt;br /&gt;
* Delivery to - the job address if present, otherwise the customer address.&lt;br /&gt;
* &amp;quot;Delivery Instructions&amp;quot; - any job instructions provided.&lt;br /&gt;
* DATE - {{Warning}} the planned start date&lt;br /&gt;
* BRANCH - the owner of the job&lt;br /&gt;
* DEL DATE - {{Warning}} the actual start date&lt;br /&gt;
* DELIVERY TIME - {{Warning}} the planned start time&lt;br /&gt;
* S TIME - the arrival time&lt;br /&gt;
* E TIME - the actual end time&lt;br /&gt;
* DEL NOTE NO - the INV number (Job Code)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Product Details, expected to be shown on every page, expected to show up to 10 products per page:&lt;br /&gt;
* ORDER NO - the order number against the product&lt;br /&gt;
* QTY - The actual quantity of the product delivered, as confirmed by the driver.&lt;br /&gt;
* UNITS - the unit type against the product&lt;br /&gt;
* QUALITY &amp;amp; DESCRIPTION - The description of the product, and the FSC number (if provided) from the Long Description.&lt;br /&gt;
* PACKS - the pack size, from the case quantity.&lt;br /&gt;
* KGS - the weight of the product&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Footer, expected to be shown on all pages:&lt;br /&gt;
* Please be sure to check every...&amp;quot; - T&amp;amp;Cs from the job.&lt;br /&gt;
* Total Wgt - the sum of the weights of the delivered products.&lt;br /&gt;
* &amp;quot;Signature&amp;quot; - the customer signature if present.&lt;br /&gt;
* Print Name - the customer signatory, if present.&lt;br /&gt;
* Date - the actual end date.&lt;br /&gt;
* &amp;quot;Signed on behalf of&amp;quot; - based on the Unmanned Location process. If the driver signature is present, it will be displayed here.&lt;br /&gt;
* Print Name - the driver's name.&lt;br /&gt;
* Date - the actual end date.&lt;br /&gt;
* &amp;quot;NUMBER 1 FOR SERVICE&amp;quot; - fixed logo.&lt;br /&gt;
* &amp;quot;Only products identified ...&amp;quot; - fixed text.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning}} Definition of the exact fields used for this report will be confirmed at functional specification stage, dependant on the interface mapping, specifically:&lt;br /&gt;
* The Dates and Times displayed&lt;br /&gt;
* The Branch&lt;br /&gt;
* The quantities displayed is dependent upon how C-ePOD will store these values, dependent on the decimal quantity change specified in this document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
At this time, there is no planned outbound interface of jobs completed in C-ePOD back to the ERP or TMS.&lt;br /&gt;
&lt;br /&gt;
At this time, there is no plan to automatically email the POD document to a customer or depot email address, or export the POD in PDF form to a document management system.&lt;br /&gt;
&lt;br /&gt;
However, these automatic emails or exports may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PDA users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=300px perrow=1&amp;gt;&lt;br /&gt;
File:REQ_336500_Admin_Load2.png|''Loads''&lt;br /&gt;
File:REQ_336500_Admin_Job1.png|''Jobs''&lt;br /&gt;
File:REQ_336500_Admin_Containers1.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted blue.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=600px heights=300px perrow=1&amp;gt;&lt;br /&gt;
File:REQ_336500_Admin_UserTracking1.png|''User Tracking - Activities''&lt;br /&gt;
File:REQ_336500_Admin_UserTracking2.png|''User Tracking - Location''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
The C-Portal TTM module will primarily be used as an internal tracking tool.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' Portal is kept updated at all times by {{#var:System}} of all states of the loads and jobs, for example:&lt;br /&gt;
* The Trip itself.&lt;br /&gt;
* The Order itself.&lt;br /&gt;
* The sequence of the Order on the Trip&lt;br /&gt;
* When an order is in transit.&lt;br /&gt;
* When an order is collected and/or delivered.&lt;br /&gt;
* When an order is cancelled.&lt;br /&gt;
The messages identify any changes to quantities and reasons for these changes at all stages.&lt;br /&gt;
&lt;br /&gt;
The interface from C-ePOD to C-PORTAL TTM must account for trunks of orders to determine the from and to locations for the orders in TTM. The jobs will be linked through the Job Code to determine this.&lt;br /&gt;
&lt;br /&gt;
It is noted that failed delivery of orders on a day may result in the order being re-planned for the following day. In this case, the order will be interfaced on another vehicle and manifest file for the next day. C-ePOD must take this into account when sending data to TTM, to show that the order is being redelivered. This will be through a suffix &amp;quot;_Rx&amp;quot; to the transport reference, showing that this is a redelivery, attempt &amp;quot;x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires the purchase of a Nokia Maps account. As the system is hosted through OBS, this cost may be part of the hosting agreement.&lt;br /&gt;
&lt;br /&gt;
It is noted that the ETAs are currently calculated within ''CALIDUS'' Portal using a fixed dwell time at each location. The Portal will be updated (as part of the product improvement program) to calculate these times with the defined dwell time between stops taken into account. This will be made available to EBB Paper when developed.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Use defined Dwell time for ETA.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal that has potential to be used by EBB paper and their customers if required. This is by no means a full list of all functionality available within ''CALIDUS'' Portal - the user guide (referenced in the Appendices of this document) contains the full details of the available functionality.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrdEnqParms.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_GenEnqParms.png|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''General Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrdEnqResults1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. &lt;br /&gt;
&lt;br /&gt;
This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
[[file:REQ_339867_TTM_TripEnqParms.png|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_TripEnqResults.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. &lt;br /&gt;
&lt;br /&gt;
This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Details ====&lt;br /&gt;
[[file:REQ_339867_TTM_OrderDetail1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the 'Mapping' parameter against the User Group is set to 'Available' and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
*	Documents - Allows the upload/view of documents held in the Portal against the order. &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderDetail2.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Event Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_339867_TTM_OrderDetail3.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Info Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is noted that the Map screen could display the ETA and Planned times.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display ETA and Planned Time on Map screen&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrivals/Departures (Order Status) Screen ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries. The recommended screen is the Order Status screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderStatus1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
The C-Portal TTM module's Order Status screen can be configured to determine the window for delivery in a +/- number of minutes before the delivery end time. This is accessible from the burger menu on the screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderStatus2.png|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer (Order) Visibility Screen ===&lt;br /&gt;
This screen represents a combination of all the screens above in one place, to simplify access.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderVis1.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Visibility Parameters and results''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Similar selection criteria to the Trip/Order Enquiries and Order Status screens can be accessed from the left-hand panel. Results will be shown on the right. &lt;br /&gt;
&lt;br /&gt;
When an order is selected, the Order Details page is displayed.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderVis2.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Visibility Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Clicking on each of the icons on the top of the page displays similar information to the other enquiry results screens. This screen also allows the user to maintain CRM-related notes and events.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_339867_TTM_OrderVis3.png|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Visibility CRM Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDCSAPE YES --&amp;gt; &lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there's only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Integration|Description=Bespoke Import Interface |Estimate=27|Notes=4&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Database|Description=Support decimal values in quantities|Estimate=20|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=VEhub|Area=Admin|Description=Improved searching on tables|Estimate=6|Notes=3&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Device|Description=General Mobile Device Styling |Estimate=1|Notes=4&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=EPOD|Area=Reports|Description=EBB Paper POD/POC Format |Estimate=2|Notes=4&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=PORTAL|Area=ETAs|Description=Use defined Dwell time for ETAs |Estimate=4|Notes=3&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=PORTAL|Area=Map|Description=Display ETA and Planned time on map |Estimate=1|Notes=3&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#	Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#	This change is required only if the OBS systems are required to store decimal quantities. Note also that this change covers C-ePOD and C-PORTAL only. Should C-TMS be used as part of this solution, this must be evaluated for change separately.&lt;br /&gt;
# These changes will be developed as part of the product improvement program internally at OBS Logistics and will be made available when complete.&lt;br /&gt;
# These changes will be delivered as part of the contracted delivery at no additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD2&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=4.0&lt;br /&gt;
|RefDate1=21/07/2016&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=5.0&lt;br /&gt;
|RefDate2=23/12/2016&lt;br /&gt;
|Ref3=[[FS 291096 Interface with CALIDUS ePOD]]&lt;br /&gt;
|RefV3=1.1&lt;br /&gt;
|RefDate3=11/01/2017&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.9.20&lt;br /&gt;
|RefDate4=14/12/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rebecca Elliott&lt;br /&gt;
|Rev1Title=EBB Paper Representative&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_339969_LFS_Control_POD_Email_Send&amp;diff=4238</id>
		<title>EST 339969 LFS Control POD Email Send</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_339969_LFS_Control_POD_Email_Send&amp;diff=4238"/>
		<updated>2017-03-23T09:34:17Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:Year|2017}}{{#vardefine:Client|LFS}}{{Estimate_Head&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Project=AUS&lt;br /&gt;
|Site=AUS-MEL&lt;br /&gt;
|ClientRef=NO REF&lt;br /&gt;
|OBSRef=339969&lt;br /&gt;
|Version=1.0&lt;br /&gt;
|Author=AN Walker&lt;br /&gt;
|PONum=&amp;amp;nbsp;&lt;br /&gt;
|Priority=3&lt;br /&gt;
|Date=23/03/17&lt;br /&gt;
|Customer=&amp;amp;nbsp;&lt;br /&gt;
|SysVer=1.4&lt;br /&gt;
|ClientRequest=The auto-email POD at Customer level is sending through POD's for both the scan onto the van and for delivery to the final delivery legs. However, the scan onto the van time is not something that the customer should know.&lt;br /&gt;
Would like to suggest that the proposed solution looks at the emailing of triggers in a complete and comprehensive way to allow for flexibility as all of our customers have varied expectations and requirements and this is only increasing with new customers.&lt;br /&gt;
|Solution=A customer-level, location-level and location type-level configuration will be added to C-TMS, used when sending jobs to C-ePOD.&lt;br /&gt;
&lt;br /&gt;
For customers, the settings mean:&lt;br /&gt;
*	POD Only - any orders owned by that customer will send a POD to the customer's contact email address at completion of the job at the final destination location only.&lt;br /&gt;
*	POC Only - any orders owned by that customer will send a POC to the customer's contact email address at completion of the job at the origin location only.&lt;br /&gt;
*	Both - any orders owned by that customer will send a POC to the customer's contact email address at completion of the job at the origin location, and will send a POD to the customer's contact email address at completion of the job at the origin location.&lt;br /&gt;
*	Neither - no POD or POC emails will be sent to the customer's contact email address at all.&lt;br /&gt;
The configuration will be added to the ''EPOD'' tab on the ''Customers'' maintenance screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For locations, the settings mean:&lt;br /&gt;
*	POD Only - any order with a To Loc of this location will send a POD to the location's contact email address at completion of the job at the final destination location only.&lt;br /&gt;
*	POC Only - any order with a From Loc of this location will send a POC to the location's contact email address at completion of the job at the origin location only.&lt;br /&gt;
*	Both - any order with a From Loc of this location will send a POC to the location's contact email address at completion of the job at the origin location, and any order with a To Loc of this location will send a POD to the location's contact email address at completion of the job at the final destination location.&lt;br /&gt;
*	Neither - no POD or POC emails will be sent to the location's contact email address at all.&lt;br /&gt;
*	Default - the location type will be checked instead.&lt;br /&gt;
The configuration will be added to the ''EPOD'' tab on the ''Locations'' maintenance screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For location types, the settings are:&lt;br /&gt;
*	POD Only - any order with a To Loc of locations of this type will send a POD to the location's contact email address at completion of the job at the final destination location only.&lt;br /&gt;
*	POC Only - any order with a From Loc of locations of this type will send a POC to the location's contact email address at completion of the job at the origin location only.&lt;br /&gt;
*	Both - any order with a From Loc of locations of this type will send a POC to the location's contact email address at completion of the job at the origin location, and any order with a To Loc of locations of this type will send a POD to the location's contact email address at completion of the job at the final destination location.&lt;br /&gt;
*	Neither - no POD or POC emails will be sent to locations of this type's contact email address at all.&lt;br /&gt;
The configuration will be added to the ''EPOD'' tab on the ''Business Data/Location Types'' maintenance screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All email addresses sent through on the jobs would then be set against the origin job and/or final delivery job based on these settings.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Email addresses are configured against contacts linked to locations or orders.&lt;br /&gt;
&lt;br /&gt;
For Customer emails:&lt;br /&gt;
* Link a location to a customer&lt;br /&gt;
* Add a contact against this location with an email address.&lt;br /&gt;
&lt;br /&gt;
For Location emails:&lt;br /&gt;
* Add a contact against this location with an email address.&lt;br /&gt;
&lt;br /&gt;
For Order emails:&lt;br /&gt;
* Add a contact against the from and/or to locations with an email address.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
* if the supplier is configured to receive both, to be sent to cust@lfs.com.au &lt;br /&gt;
* the collection address is configured for both, to be sent to origin@cust.com.au&lt;br /&gt;
* the destination address is set to both, to be sent to final@gmail.com&lt;br /&gt;
* the order has a From Location email address set to order_to@gmail.com&lt;br /&gt;
* the order has a To Location email address set to order_from@gmail.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this example, the jobs sent through (in normal configuration) would be as follows:&lt;br /&gt;
* Customer to LFS depot.	- cust@cust.com.au; origin@cust.com.au; order_from@gmail.com&lt;br /&gt;
* LFS Depot to Airport	- (None)&lt;br /&gt;
* Airport to Airport	- (None)&lt;br /&gt;
* Airport to LFS Depot	- (None)&lt;br /&gt;
* LFS Depot to final destination	- cust@lfs.com.au; final@gmail.com; order_to@gmail.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So the rules are:&lt;br /&gt;
*	Never populate email if the job being sent is not an origin or final destination location.&lt;br /&gt;
*	Only add customer email to origin if configuration is Both or POC.&lt;br /&gt;
*	Only add customer email to final destination if configuration is Both or POD.&lt;br /&gt;
*	Only add address email to origin if location configuration is Both or POC or Default and location type configuration is Both or POC.&lt;br /&gt;
*	Only add address email to final destination if configuration is Both or POD or Default and location type configuration is Both or POD.&lt;br /&gt;
*	Add order From Loc email to origin if present.&lt;br /&gt;
*	Add order To Loc email to final destination if present.&lt;br /&gt;
&lt;br /&gt;
The email lists will be curated when created to ensure that only one entry per email is generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Job Swaps, the systems will be configured to remove the emails from the job at the swap point, and will be copied to the new jobs, ensuring that the emails will only be sent at final destination.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This mechanism will be used in preference to the Job Group mechanism is C-ePOD. The C-ePOD Site email address (for LFS contact information) will still be used to send emails to LFS contacts.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If addresses are free-typed on orders through the Portal screens rather than a location found for that location that already exists, a new location will be created. The contact information will not be stored against the location, only against the order. The configuration for this new location will be set to ''Default''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If a location is configured to ''Both'', this means that the location email address is used when the order is delivered or collected from that location. This does not mean that the email address will be used for the POC or POD at the other location.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
When delivering an order from RDCMEL direct to customer MYCUST, if location MYCUST has a contact email address and the configuration is ''Both'', the email address will be used on the POD to MYCUST - the email will not be used for the POC from RDCMEL.&lt;br /&gt;
&lt;br /&gt;
The reverse is also true: When delivering an order from MYCUST to RDCMEL, the email address will be used on the POC from MYCUST - the email will not be used for the POD to RDCMEL.&lt;br /&gt;
}}{{EstimateCostDetails{{#var:Year}}&lt;br /&gt;
|REQ=0.0&lt;br /&gt;
|EST=1.0&lt;br /&gt;
|FS=1.75&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=8.5&lt;br /&gt;
|ST=1.5&lt;br /&gt;
|IMP=0.5&lt;br /&gt;
|PM=1.0&lt;br /&gt;
|Client=LFS&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FOC=N&lt;br /&gt;
|NOFOOTER=Y&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
Copyright © OBS Logistics {{#var:Year}}.&amp;lt;br /&amp;gt;&lt;br /&gt;
This estimate has an expiry date of 30 days from the specified Estimate Date.&amp;lt;br /&amp;gt;&lt;br /&gt;
The information contained herein is supplied without liability for errors or omissions.&lt;br /&gt;
&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
[[Category:{{#var:Client}} EST]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_339969_LFS_Control_POD_Email_Send&amp;diff=4237</id>
		<title>EST 339969 LFS Control POD Email Send</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_339969_LFS_Control_POD_Email_Send&amp;diff=4237"/>
		<updated>2017-03-23T09:33:20Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 Review and Issue to LFS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:Year|2017}}{{#vardefine:Client|LFS}}{{Estimate_Head&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Project=AUS&lt;br /&gt;
|Site=AUS-MEL&lt;br /&gt;
|ClientRef=NO REF&lt;br /&gt;
|OBSRef=339969&lt;br /&gt;
|Version=1.0&lt;br /&gt;
|Author=AN Walker&lt;br /&gt;
|PONum=&amp;amp;nbsp;&lt;br /&gt;
|Priority=3&lt;br /&gt;
|Date=23/03/17&lt;br /&gt;
|Customer=&amp;amp;nbsp;&lt;br /&gt;
|SysVer=1.4&lt;br /&gt;
|ClientRequest=The auto-email POD at Customer level is sending through POD's for both the scan onto the van and for delivery to the final delivery legs. However, the scan onto the van time is not something that the customer should know.&lt;br /&gt;
Would like to suggest that the proposed solution looks at the emailing of triggers in a complete and comprehensive way to allow for flexibility as all of our customers have varied expectations and requirements and this is only increasing with new customers.&lt;br /&gt;
|Solution=A customer-level, location-level and location type-level configuration will be added to C-TMS, used when sending jobs to C-ePOD.&lt;br /&gt;
&lt;br /&gt;
For customers, the settings mean:&lt;br /&gt;
*	POD Only - any orders owned by that customer will send a POD to the customer's contact email address at completion of the job at the final destination location only.&lt;br /&gt;
*	POC Only - any orders owned by that customer will send a POC to the customer's contact email address at completion of the job at the origin location only.&lt;br /&gt;
*	Both - any orders owned by that customer will send a POC to the customer's contact email address at completion of the job at the origin location, and will send a POD to the customer's contact email address at completion of the job at the origin location.&lt;br /&gt;
*	Neither - no POD or POC emails will be sent to the customer's contact email address at all.&lt;br /&gt;
The configuration will be added to the ''EPOD'' tab on the ''Customers'' maintenance screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For locations, the settings mean:&lt;br /&gt;
*	POD Only - any order with a To Loc of this location will send a POD to the location's contact email address at completion of the job at the final destination location only.&lt;br /&gt;
*	POC Only - any order with a From Loc of this location will send a POC to the location's contact email address at completion of the job at the origin location only.&lt;br /&gt;
*	Both - any order with a From Loc of this location will send a POC to the location's contact email address at completion of the job at the origin location, and any order with a To Loc of this location will send a POD to the location's contact email address at completion of the job at the final destination location.&lt;br /&gt;
*	Neither - no POD or POC emails will be sent to the location's contact email address at all.&lt;br /&gt;
*	Default - the location type will be checked instead.&lt;br /&gt;
The configuration will be added to the ''EPOD'' tab on the ''Locations'' maintenance screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For location types, the settings are:&lt;br /&gt;
*	POD Only - any order with a To Loc of locations of this type will send a POD to the location's contact email address at completion of the job at the final destination location only.&lt;br /&gt;
*	POC Only - any order with a From Loc of locations of this type will send a POC to the location's contact email address at completion of the job at the origin location only.&lt;br /&gt;
*	Both - any order with a From Loc of locations of this type will send a POC to the location's contact email address at completion of the job at the origin location, and any order with a To Loc of locations of this type will send a POD to the location's contact email address at completion of the job at the final destination location.&lt;br /&gt;
*	Neither - no POD or POC emails will be sent to locations of this type's contact email address at all.&lt;br /&gt;
The configuration will be added to the ''EPOD'' tab on the ''Business Data/Location Types'' maintenance screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All email addresses sent through on the jobs would then be set against the origin job and/or final delivery job based on these settings.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Email addresses are configured against contacts linked to locations or orders.&lt;br /&gt;
&lt;br /&gt;
For Customer emails:&lt;br /&gt;
* Link a location to a customer&lt;br /&gt;
* Add a contact against this location with an email address.&lt;br /&gt;
&lt;br /&gt;
For Location emails:&lt;br /&gt;
* Add a contact against this location with an email address.&lt;br /&gt;
&lt;br /&gt;
For Order emails:&lt;br /&gt;
* Add a contact against the from and/or to locations with an email address.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
* if the supplier is configured to receive both, to be sent to cust@lfs.com.au &lt;br /&gt;
* the collection address is configured for both, to be sent to origin@cust.com.au&lt;br /&gt;
* the destination address is set to both, to be sent to final@gmail.com&lt;br /&gt;
* the order has a From Location email address set to order_to@gmail.com&lt;br /&gt;
* the order has a To Location email address set to order_from@gmail.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this example, the jobs sent through (in normal configuration) would be as follows:&lt;br /&gt;
* Customer to LFS depot.	- cust@cust.com.au; origin@cust.com.au; order_from@gmail.com&lt;br /&gt;
* LFS Depot to Airport	- (None)&lt;br /&gt;
* Airport to Airport	- (None)&lt;br /&gt;
* Airport to LFS Depot	- (None)&lt;br /&gt;
* LFS Depot to final destination	- cust@lfs.com.au; final@gmail.com; order_to@gmail.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So the rules are:&lt;br /&gt;
*	Never populate email if the job being sent is not an origin or final destination location.&lt;br /&gt;
*	Only add customer email to origin if configuration is Both or POC.&lt;br /&gt;
*	Only add customer email to final destination if configuration is Both or POD.&lt;br /&gt;
*	Only add address email to origin if location configuration is Both or POC or Default and location type configuration is Both or POC.&lt;br /&gt;
*	Only add address email to final destination if configuration is Both or POD or Default and location type configuration is Both or POD.&lt;br /&gt;
*	Add order From Loc email to origin if present.&lt;br /&gt;
*	Add order To Loc email to final destination if present.&lt;br /&gt;
&lt;br /&gt;
The email lists will be curated when created to ensure that only one entry per email is generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Job Swaps, the systems will be configured to remove the emails from the job at the swap point, and will be copied to the new jobs, ensuring that the emails will only be sent at final destination.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This mechanism will be used in preference to the Job Group mechanism is C-ePOD. The C-ePOD Site email address (for LFS contact information) will still be used to send emails to LFS contacts.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If addresses are free-typed on orders through the Portal screens rather than a location found for that location that already exists, a new location will be created. The contact information will not be stored against the location, only against the order. The configuration for this new location will be set to ''Default''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If a location is configured to ''Both'', this means that the location email address is used when the order is delivered or collected from that location. This does not mean that the email address will be used for the POC or POD at the other location.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
When delivering an order from RDCMEL direct to customer MYCUST, if location MYCUST has a contact email address and the configuration is ''Both'', the email address will be used on the POD to MYCUST - the email will not be used for the POC from RDCMEL.&lt;br /&gt;
&lt;br /&gt;
The reverse is also true: When delivering an order from MYCUST to RDCMEL, the email address will be used on the POC from MYCUST - the email will not be used for the POD to RDCMEL.&lt;br /&gt;
}}{{EstimateCostDetails{{#var:Year}}&lt;br /&gt;
|REQ=0.0&lt;br /&gt;
|EST=1.0&lt;br /&gt;
|FS=1.75&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=7.5&lt;br /&gt;
|ST=1.5&lt;br /&gt;
|IMP=0.5&lt;br /&gt;
|PM=1.0&lt;br /&gt;
|Client=LFS&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FOC=N&lt;br /&gt;
|NOFOOTER=Y&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
Copyright © OBS Logistics {{#var:Year}}.&amp;lt;br /&amp;gt;&lt;br /&gt;
This estimate has an expiry date of 30 days from the specified Estimate Date.&amp;lt;br /&amp;gt;&lt;br /&gt;
The information contained herein is supplied without liability for errors or omissions.&lt;br /&gt;
&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
[[Category:{{#var:Client}} EST]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336019_332569-9_GK_Planned_Vs_Actual_Report&amp;diff=3514</id>
		<title>FS 336019 332569-9 GK Planned Vs Actual Report</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336019_332569-9_GK_Planned_Vs_Actual_Report&amp;diff=3514"/>
		<updated>2016-08-23T12:17:24Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title| Planned Vs Actual Report}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336019 332569-9}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
A series of Planned vs Actuals reports, comparing planned data from DiPS and actual data from TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
== Planned Vs Actual Reporting ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report is expected to be run daily.&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots for that customer.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default value).&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default value).&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default value). &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report, and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only completed or cancelled jobs will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** If a parameter is left as All Values, this will not appear in the name, with the exception of Depot and Date Range.&lt;br /&gt;
&lt;br /&gt;
Depending on browser settings, this may either offer to save the report immediately, or open immediately in the browser. If opened in the browser, the report may be saved locally.&lt;br /&gt;
&lt;br /&gt;
An example report has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders&lt;br /&gt;
* All titles and summary lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced.&lt;br /&gt;
*	Work time is defined as the time in between arriving at a location and departing a location. The working time consists of loading/unloading and paperwork&lt;br /&gt;
*	Travel time is defined as the time in between the start and arrive times stored against a job, either travelling on Collections/Deliveries or travel to/from the depot.&lt;br /&gt;
* Route displayed on the reports will be the new Route field added to the load, if this is not blank, otherwise this will be the default Load ID.&lt;br /&gt;
* Date displayed on the report will be the Planned End Date, when the delivery should be completed.&lt;br /&gt;
* Data on the report will be primarily sorted by Planned End Date, Vehicle Reg and Route, then any additional data specific to that tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the sum of the planned values against the jobs on the load.&lt;br /&gt;
* Actual - the sum of the actual values against the jobs on the load.&lt;br /&gt;
* Var - the planned summed value minus the actual summed value.&lt;br /&gt;
* % Var - the summed variance divided by the summed planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes).&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the planned values against the job.&lt;br /&gt;
* Actual - the actual values against the job.&lt;br /&gt;
* Var - the planned value minus the actual value.&lt;br /&gt;
* % Var - the variance divided by the planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
Breaks and Depot (Loading/Unloading) jobs will not include account number and postcode.&lt;br /&gt;
&lt;br /&gt;
Loading jobs will not include Distance or Travel Time variances.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance.&lt;br /&gt;
&lt;br /&gt;
The report will summarise at Load (route) and will display:&lt;br /&gt;
* No. Planned - a sum of the number of collection or delivery jobs on the load.&lt;br /&gt;
* No. Achieved - a sum of the number of collection or delivery jobs on the load where the actual arrival time is within the window.&lt;br /&gt;
* Var - No. Planned minus No. Achieved.&lt;br /&gt;
* % Var - No. Achieved divided by No. Planned, expressed as a percentage, rounded up. {{Note}} This is not the percentage variance, this is the percentage compliance. The column title will be labelled as '% Comp' rather than '% Var' to reflect this.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) or the planned arrival time, otherwise red background.&lt;br /&gt;
* Achieved Time Window - Yes or, depending if the arrival time is within the time window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Arrival Time - the actual Arrival Time.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
The jobs must be received from DiPS for the planned values.&lt;br /&gt;
&lt;br /&gt;
The jobs must be sent to TomTom WEBFLEET and updated from there to achieve the actual values. &lt;br /&gt;
The set-up of these interfaces are covered in the relevant specification referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
''Reports''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
The data used by these reports is derived directly from the DiPS interface (for planned information) and WEBFLEET Update interface (for actuals information), defined in the relevant specifications referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Functional Description  =&lt;br /&gt;
&lt;br /&gt;
== Admin Parameters Screen ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the system type is &amp;quot;PvA&amp;quot; (EPL_SYSTEM_TYPE of EPOD_LOAD), the drop-down list of reports should have the value &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; pre-selected and the parameters already shown. If the system type is any other value, the report screen should operate as now, in that the reports drop-down list should be showing &amp;quot;Please select a Report&amp;quot;, with no parameters shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots (option &amp;quot;All Depots&amp;quot;). The list of depots accessible for the report will be set against the system in pre-configured List Items for Greene King (EPOD_LISTS and EPOD_LIST_ITEMS). {{Note}} If the Depot selected is changed, any select value in Driver, Vehicle and Customer Account Number will be reset.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default option &amp;quot;All Drivers&amp;quot;). This list of drivers will be built after the selection of Depot. The drivers will be listed showing Site and Name and sorted this way e.g. &amp;quot;EAS-A Driver&amp;quot;, This is built from EPL_SITE_ID and EPL_USER_NAME from EPOD_USER.&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default option &amp;quot;All Vehicles&amp;quot;). This list of vehicles will be built after the selection of Depot. The vehicles will be listed showing Site and Reg and sorted this way e.g. &amp;quot;EAS-AB12 CDE&amp;quot;, This is built from EPL_SITE_ID and EPL_VEHICLE_REG from EPOD_VEHICLE.&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier. If the From date selected is after the To date, the To date will default to the From date. If the To date selected is before the From date, the From date will default to the To date. The user will be provided a Calendar pop-up to select dates.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default option &amp;quot;All Customers&amp;quot;). This list of Customers will be built after the selection of Depot. The customers will be listed showing Site and Name and sorted this way e.g. &amp;quot;EAS-Ashby Mill Road Club [Scunthorpe]&amp;quot;, This is built from EPL_SITE_ID and EPL_CUSTOMER_NAME from EPOD_CUSTOMER.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} Parameters selected as &amp;quot;All ...&amp;quot; will have the parameter value as blank.&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report by clicking '''Create Excel Spreadsheet''' and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
{{Note}}:&lt;br /&gt;
* Only completed or cancelled jobs and loads will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** Depot: The selected Depot ID (EPL_SITE_ID) or &amp;quot;ALL&amp;quot;, plus an underscore (_).&lt;br /&gt;
** Driver: The selected Driver ID (EPL_USER_ID) plus an underscore (_), or omitted if All selected.&lt;br /&gt;
** Vehicle: The selected Vehicle ID (EPL_VEHICLE_ID) plus an underscore (_), or omitted if All selected.&lt;br /&gt;
** Customer: The selected Customer Code (EPL_CUSTOMER_CODE) with all spaces replaced as underscores, plus an underscore (_), or omitted if All selected.&lt;br /&gt;
** Date: The Date From and To, in YYYYMMDD format, concatenated with an underscore (_).&lt;br /&gt;
&lt;br /&gt;
Examples: &lt;br /&gt;
* Where all parameters are left at the default:&lt;br /&gt;
** PVA_ALL_20160629_20160629.xls&lt;br /&gt;
* Where a specific depot (Eastwood) is selected:&lt;br /&gt;
** PVA_EAS_20160629_20160629.xls&lt;br /&gt;
* Where a specific driver (A Driver) is selected:&lt;br /&gt;
** PVA_EAS_adriver_20160629_20160629.xls&lt;br /&gt;
* Where a specific vehicle (AB12 BCD) is selected:&lt;br /&gt;
** PVA_EAS_adriver_AB12BCD_20160629_20160629.xls&lt;br /&gt;
* Where a specific Customer (268349  001 - Ashby Mill Road Club [Scunthorpe]) is selected:&lt;br /&gt;
** PVA_EAS_adriver_AB12BCD_268349__001_20160629_20160629.xls&lt;br /&gt;
* Where a 3-day range is selected (from 27/06 to 29/06):&lt;br /&gt;
** PVA_EAS_adriver_AB12BCD_268349__001_20160627_20160629.xls&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The selected parameters should be displayed as follows:&lt;br /&gt;
* All parameters will be labelled and have values and descriptions displayed as below: &lt;br /&gt;
** Label &amp;quot;Depot&amp;quot;: The selected Depot ID (value) and Name (description) (EPL_SITE_ID and EPL_DESCRIPTION) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
** Label &amp;quot;Driver&amp;quot;: The selected Driver ID (value) and Name (description) (EPL_USER_ID and EPL_USER_NAME) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
** Label &amp;quot;Vehicle&amp;quot;: The selected Vehicle ID (value) and Reg (description) (EPL_VEHICLE_ID and EPL_VEHICLE_REG) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
** Label &amp;quot;Date Range&amp;quot;: The Date From and To, in YYYYMMDD format.&lt;br /&gt;
** Label &amp;quot;Customer&amp;quot;: The selected Customer Code (value) and Name (description) (EPL_CUSTOMER_CODE and EPL_CUSTOMER_NAME) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
* The columns used will be as follows:&lt;br /&gt;
** C - The parameter Label.&lt;br /&gt;
** E - The parameter value. For Date Range, the From date.&lt;br /&gt;
** F - &amp;quot; to &amp;quot;, only for the Date Range parameter, blank for all others.&lt;br /&gt;
** G - The parameter Name if the parameter value is not blank. For Date Range, the To date.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone. This is specified as the title of each page section following.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, an additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders.&lt;br /&gt;
* All page titles, column titles and total lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced by manually modifying the report after production.&lt;br /&gt;
* Page headers, Tables, Titles and Totals (where required) will always be displayed, even if there are no other rows on the table. In this case, for a page that displays a totals row, the total row will show zero values in the summarised columns.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Distance (KMs)&lt;br /&gt;
** Plan: The sum of the planned travel distance on all the jobs on the load (summed from EPL_DISTANCE_PLANNED).&lt;br /&gt;
** Actual: The sum of the actual travel distance on all the jobs on the load (summed from EPL_DISTANCE_ACTUAL).&lt;br /&gt;
** Var: the planned summed travel distance minus the actual summed travel distance.&lt;br /&gt;
** % Var: the summed variance (calculated above) divided by the summed planned value calculated above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
* Work Time (Mins)&lt;br /&gt;
** Plan: The sum of the planned work time on all the jobs on the load (summed from EPL_WORK_PLANNED).&lt;br /&gt;
** Actual: The sum of the actual work time on all the jobs on the load (summed from EPL_WORK_ACTUAL).&lt;br /&gt;
** Var: the planned summed work time minus the actual summed work time.&lt;br /&gt;
** % Var: the summed variance (calculated above) divided by the summed planned value calculated above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
* Travel Time (Mins)&lt;br /&gt;
** Plan: The sum on the planned travel time on all the jobs on the load (summed from EPL_TRAVEL_PLANNED).&lt;br /&gt;
** Actual: The sum of the actual travel time on all the jobs on the load (summed from EPL_DRIVING_TIME).&lt;br /&gt;
** Var: the planned summed travel time minus the actual summed travel time.&lt;br /&gt;
** % Var: the summed variance (calculated above) divided by the summed planned value calculated above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be calculated with a SQL statement specific to this report, summing, grouping and ordering in the mechanism specified above. The following is an example of how this might be achieved for distance:&lt;br /&gt;
    SELECT &lt;br /&gt;
    , el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_CODE &lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    , SUM(ej.EPL_DISTANCE_PLANNED) DistancePlan&lt;br /&gt;
    , SUM(ej.EPL_DISTANCE_ACTUAL) DistanceActual&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    GROUP BY &lt;br /&gt;
    el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    ORDER BY&lt;br /&gt;
    el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
&lt;br /&gt;
Variance and Percentage values will be calculated from the returned Plan and Actual values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes). This will be calculated by the process. The total line will have all columns in bold.&lt;br /&gt;
&lt;br /&gt;
The columns totalled in detail are:&lt;br /&gt;
* Route - A count of the lines.&lt;br /&gt;
* Distance&lt;br /&gt;
** Plan - A sum of all the row values.&lt;br /&gt;
** Actual - A sum of all the row values.&lt;br /&gt;
** Var - A sum of all the row values.&lt;br /&gt;
** % Var - The summed Var value divided by the summed Plan value.&lt;br /&gt;
* Work Time - All columns totalled as above.&lt;br /&gt;
* Travel Time - All columns totalled as above.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). This cell should be blank and have a grey background if the job is a depot loading or unloading job (EPL_LOADING_TYPE is not blank) or the job is a Break (EPL_CUSTOMER_CODE is &amp;quot;BREAK&amp;quot;).&lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). This cell should be blank and have a grey background if the job is a depot loading or unloading job (EPL_LOADING_TYPE is not blank) or the job is a Break (EPL_CUSTOMER_CODE is &amp;quot;BREAK&amp;quot;).&lt;br /&gt;
* Distance (KMs)&lt;br /&gt;
** Plan: The planned travel distance of the job on the load (EPL_DISTANCE_PLANNED). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Actual: The actual travel distance of the job on the load (EPL_DISTANCE_ACTUAL). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Var: the planned travel distance minus the actual travel distance. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** % Var: the variance (calculated above) divided by the planned value above, expressed as a percentage with 1 decimal place. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
* Work Time (Mins)&lt;br /&gt;
** Plan: The planned work time of the job on the load (EPL_WORK_PLANNED).&lt;br /&gt;
** Actual: The actual work time of the job on the load (EPL_WORK_ACTUAL).&lt;br /&gt;
** Var: the planned work time minus the actual work time.&lt;br /&gt;
** % Var: the variance (calculated above) divided by the planned value above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
* Travel Time (Mins)&lt;br /&gt;
** Plan: The planned travel time of the job on the load (EPL_TRAVEL_PLANNED). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Actual: The actual travel time of the job on the load (EPL_DRIVING_TIME). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Var: the planned travel time minus the actual travel time. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** % Var: the variance (calculated above) divided by the planned value above, expressed as a percentage with 1 decimal place. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Customer Names and Post Codes should be obtained from the Job Address if this exists for the job type (EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB_ADDRESS linked from EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB respectively). If this record exists, use EPL_NAME and EPL_POSTCODE respectively, if the values are not blank. If this record does not exist or the values are blank, use EPL_CUSTOMER_NAME and EPL_POSTCODE respectively from EPOD_CUSTOMER, linked from EPL_CUSTOMER_CODE of EPOD_JOB.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Driver-generated Break Jobs will have the same sequence as the following or in-progress job when generated. To ensure that they are displayed after they job that they interrupt, the result will also be sorted in Actual Start Date and Time sequence as well as Job Sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be returned with a SQL statement specific to this report, ordering in the mechanism specified above. The following is an example of how this might be achieved for distance:&lt;br /&gt;
    SELECT &lt;br /&gt;
      el.EPL_SITE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    , el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , ej.EPL_CUSTOMER_CODE&lt;br /&gt;
    , ec.EPL_CUSTOMER_NAME&lt;br /&gt;
    , ec.EPL_POSTCODE&lt;br /&gt;
    , eja.EPL_NAME&lt;br /&gt;
    , eja.EPL_POSTCODE&lt;br /&gt;
    , ej.EPL_JOB_TYPE&lt;br /&gt;
    , ej.EPL_LOADING_TYPE&lt;br /&gt;
    , ej.EPL_DISTANCE_PLANNED&lt;br /&gt;
    , ej.EPL_DISTANCE_ACTUAL&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    JOIN EPOD_CUSTOMER ec&lt;br /&gt;
        ON ec.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND ec.EPL_CUSTOMER_CODE= ej.EPL_CUSTOMER_CODE&lt;br /&gt;
    LEFT JOIN EPOD_JOB_ADDRESS eja&lt;br /&gt;
        ON eja.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND eja.EPL_JOB_TYPE = ej.EPL_JOB_TYPE&lt;br /&gt;
        AND eja.EPL_JOB_ID = ej.EPL_JOB_ID&lt;br /&gt;
    WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    ORDER BY&lt;br /&gt;
    el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    , ej.EPL_SEQUENCE&lt;br /&gt;
    , ej.EPL_START_ACTUAL_DATE, ej.EPL_START_ACTUAL_TIME&lt;br /&gt;
&lt;br /&gt;
Variance and Percentage values will be calculated from the returned Plan and Actual values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values. This will be calculated by the process. The total line will have all columns in bold.&lt;br /&gt;
&lt;br /&gt;
The columns totalled in detail are:&lt;br /&gt;
* Distance&lt;br /&gt;
** Plan - A sum of all the row values.&lt;br /&gt;
** Actual - A sum of all the row values.&lt;br /&gt;
** Var - A sum of all the row values.&lt;br /&gt;
** % Var - The summed Var value divided by the summed Plan value.&lt;br /&gt;
* Work Time - All columns totalled as above.&lt;br /&gt;
* Travel Time - All columns totalled as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance against the delivery/collection windows provided.&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* No. Planned: The number of jobs on the load with a unique sequence (EPL_SEQUENCE, excluding Loading/Unloading (EPL_LOADING_TYPE is not blank) or Break (EPL_CUSTOMER_CODE is &amp;quot;BREAK&amp;quot;) jobs.&lt;br /&gt;
* No. Achieved: Of the jobs selected, those with a delivery time (EPL_END_ACTUAL_TIME) within the Job or Customer Delivery Windows - see below.&lt;br /&gt;
* Var: Calculated Planned above minus calculated achieved above&lt;br /&gt;
* % Comp: {{Note}} This is a percentage Compliance column, not a percentage variance column. Calculated Achieved above divided by calculated Planned above, with no decimal places.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be returned with a SQL statement specific to this report, ordering in the mechanism specified above. The following is an example of how this might be achieved:&lt;br /&gt;
    SELECT &lt;br /&gt;
          ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , ej.EPL_VEHICLE_REG&lt;br /&gt;
        , COUNT(ej.EPL_SEQUENCE) NoPlanned&lt;br /&gt;
        , SUM(Achieved) Achieved&lt;br /&gt;
    FROM (&lt;br /&gt;
    SELECT &lt;br /&gt;
          ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_SEQUENCE &lt;br /&gt;
        , MAX(el.EPL_LOAD_END_PLANNED_DATE) EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , MAX(ev.EPL_VEHICLE_REG) EPL_VEHICLE_REG&lt;br /&gt;
        , MAX(ej.EPL_CUSTOMER_CODE) EPL_CUSTOMER_CODE&lt;br /&gt;
        , MAX(CASE WHEN &lt;br /&gt;
            ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwj.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwj.ETW_TIME_END, 23599999) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwc.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwc.ETW_TIME_END, 23599999) &lt;br /&gt;
            THEN 1 ELSE 0 END) Achieved&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwj&lt;br /&gt;
        ON etwj.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwj.ETW_TYPE = 'J'&lt;br /&gt;
        AND etwj.ETW_FK_ID = ej.EPL_JOB_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwc&lt;br /&gt;
        ON etwc.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwc.ETW_TYPE = 'C'&lt;br /&gt;
        AND etwc.ETW_FK_ID = ej.EPL_CUSTOMER_CODE&lt;br /&gt;
      WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND ej.EPL_LOADING_TYPE = ''&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    GROUP BY ej.[EPL_SITE_ID]&lt;br /&gt;
          ,ej.[EPL_LOAD_ID]&lt;br /&gt;
          ,ej.[EPL_SEQUENCE]&lt;br /&gt;
    ) as ej&lt;br /&gt;
    GROUP BY ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , ej.EPL_VEHICLE_REG&lt;br /&gt;
{{Note}} The SQL shown here consolidated the Customer and Job windows. The report will display only the achievement status and window against a single Job window. With the data expected in this implementation, this process will work. If customer windows are added or multiple windows are required, the achievement status will show correctly, however changes will be required to display the window correctly. These changes should be included as part of the work to implement multiple windows.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values. This will be calculated by the process. The total line will have all columns in bold.&lt;br /&gt;
&lt;br /&gt;
The columns totalled in detail are:&lt;br /&gt;
* No. Planned - A sum of all the row values.&lt;br /&gt;
* No. Achieved - A sum of all the row values.&lt;br /&gt;
* Var - A sum of all the row values.&lt;br /&gt;
* % Comp - The summed variance plus the summed No. Planned, divided by the summed No. Planned, expressed as a percentage with no decimal places.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route Number: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). &lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). &lt;br /&gt;
* Time Window: Concatenated from the job time window (ETW_TIME_START and ETW_TIME_END, if either is a non-zero value)&lt;br /&gt;
* Planned Time: The Planned Start Time (EPL_START_PLANNED_TIME).&lt;br /&gt;
* Arrival Time: The Arrival Time (EPL_ARRIVAL_TIME) if present, else the Actual End Time (EPL_END_ACTUAL_TIME). Referred to as the Arrival Time here on in.&lt;br /&gt;
* Var: The Arrival Time above minus the planned time above, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) of the planned arrival time, otherwise red background.&lt;br /&gt;
* Time Window Achieved Yes/No: Whether the arrival time was within the Job Time Window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Customer Names and Post Codes should be obtained from the Job Address if this exists for the job type (EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB_ADDRESS linked from EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB respectively). If this record exists, use EPL_NAME and EPL_POSTCODE respectively, if the values are not blank. If this record does not exist or the values are blank, use EPL_CUSTOMER_NAME and EPL_POSTCODE respectively from EPOD_CUSTOMER, linked from EPL_CUSTOMER_CODE of EPOD_JOB.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be returned with a SQL statement specific to this report, ordering in the mechanism specified above. The following is an example of how this might be achieved:&lt;br /&gt;
    SELECT &lt;br /&gt;
          ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_SEQUENCE &lt;br /&gt;
        , MAX(el.EPL_LOAD_END_PLANNED_DATE) EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , MAX(ev.EPL_VEHICLE_REG) EPL_VEHICLE_REG&lt;br /&gt;
        , MAX(ej.EPL_CUSTOMER_CODE) EPL_CUSTOMER_CODE&lt;br /&gt;
        , MAX(ec.EPL_CUSTOMER_NAME) EPL_CUSTOMER_NAME&lt;br /&gt;
        , MAX(ec.EPL_POSTCODE) EPL_CUSTOMER_POSTCODE&lt;br /&gt;
        , MAX(eja.EPL_NAME) EPL_NAME&lt;br /&gt;
        , MAX(eja.EPL_POSTCODE) EPL_POSTCODE&lt;br /&gt;
        , MAX(ej.EPL_JOB_TYPE) EPL_JOB_TYPE&lt;br /&gt;
        , MAX(ej.EPL_LOADING_TYPE) EPL_LOADING_TYPE&lt;br /&gt;
        , MAX(ej.EPL_START_PLANNED_TIME) EPL_START_PLANNED_TIME&lt;br /&gt;
        , MAX(CASE WHEN ej.EPL_ARRIVAL_TIME &amp;gt; 0 THEN ej.EPL_ARRIVAL_TIME ELSE ej.EPL_END_ACTUAL_TIME END) EPL_ARRIVAL_TIME&lt;br /&gt;
        , MAX(etwj.ETW_TIME_START) ETW_TIME_START&lt;br /&gt;
        , MAX(etwj.ETW_TIME_END) ETW_TIME_END&lt;br /&gt;
        , MAX(CASE WHEN &lt;br /&gt;
            ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwj.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwj.ETW_TIME_END, 23599999) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwc.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwc.ETW_TIME_END, 23599999) &lt;br /&gt;
            THEN 1 ELSE 0 END) Achieved&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    JOIN EPOD_CUSTOMER ec&lt;br /&gt;
        ON ec.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND ec.EPL_CUSTOMER_CODE= ej.EPL_CUSTOMER_CODE&lt;br /&gt;
    LEFT JOIN EPOD_JOB_ADDRESS eja&lt;br /&gt;
        ON eja.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND eja.EPL_JOB_TYPE = ej.EPL_JOB_TYPE&lt;br /&gt;
        AND eja.EPL_JOB_ID = ej.EPL_JOB_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwj&lt;br /&gt;
        ON etwj.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwj.ETW_TYPE = 'J'&lt;br /&gt;
        AND etwj.ETW_FK_ID = ej.EPL_JOB_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwc&lt;br /&gt;
        ON etwc.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwc.ETW_TYPE = 'C'&lt;br /&gt;
        AND etwc.ETW_FK_ID = ej.EPL_CUSTOMER_CODE&lt;br /&gt;
      WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND ej.EPL_LOADING_TYPE = ''&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    GROUP BY ej.[EPL_SITE_ID]&lt;br /&gt;
          ,ej.[EPL_LOAD_ID]&lt;br /&gt;
          ,ej.[EPL_SEQUENCE]&lt;br /&gt;
{{Note}} The SQL shown here consolidated the Customer and Job windows. The report will display only the achievement status and window against a single Job window. With the data expected in this implementation, this process will work. If customer windows are added or multiple windows are required, the achievement status will show correctly, however changes will be required to display the window correctly. These changes should be included as part of the work to implement multiple windows.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). &lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). &lt;br /&gt;
* Time Window: Concatenated from the job time window (ETW_TIME_START and ETW_TIME_END, if either is a non-zero value)&lt;br /&gt;
* Arrival Time: The Arrival Time (EPL_ARRIVAL_TIME) if present, else the Actual End Time (EPL_END_ACTUAL_TIME).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Customer Names and Post Codes should be obtained from the Job Address if this exists for the job type (EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB_ADDRESS linked from EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB respectively). If this record exists, use EPL_NAME and EPL_POSTCODE respectively, if the values are not blank. If this record does not exist or the values are blank, use EPL_CUSTOMER_NAME and EPL_POSTCODE respectively from EPOD_CUSTOMER, linked from EPL_CUSTOMER_CODE of EPOD_JOB.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The same query used to create the Time Detail report may be used again here. The query should not be executed again - the same result recordset may be used again. In this case, however, only records that have a window that is not achieved should be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route Number: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). &lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). &lt;br /&gt;
* Planned Time: The Planned Start Time (EPL_START_PLANNED_TIME).&lt;br /&gt;
* Arrival Time: The Arrival Time (EPL_ARRIVAL_TIME) if present, else the Actual End Time (EPL_END_ACTUAL_TIME). Referred to as the Arrival Time here on in.&lt;br /&gt;
* Var: The Arrival Time above minus the planned time above, in minutes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The same query used to create the Time Detail report may be used again here. The query should not be executed again - the same result recordset may be used again. In this case, however, only records that have a calculated Var value of +/- 30 minutes should be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=To test the new Planned Vs Actual report content and production.&lt;br /&gt;
|MenuAccess=Reports&lt;br /&gt;
|Prerequisites=Data will be set up as per the test load in the DiPS sample file (Load 46004, Route E2010). The data should be completed as follows:&lt;br /&gt;
* GREENE KING - Completed in time in window.&lt;br /&gt;
* White Swan [Scotter] - Completed in time in window.&lt;br /&gt;
* Queensway [Scunthorpe] - Completed out of time (+35 minutes) in window.&lt;br /&gt;
* Ashby Mill Road Club [Scunthorpe] - Completed out of window (1031).&lt;br /&gt;
* Break 1 - Completed.&lt;br /&gt;
* Priory [Scunthorpe] - Completed in time in window.&lt;br /&gt;
* Honest Lawyer [Scunthorpe] - Completed out of window (1201).&lt;br /&gt;
* Bay Horse [Winteringham] - Completed in time with driver-generated break whilst driving.&lt;br /&gt;
* Break 2 - Cancelled.&lt;br /&gt;
* GREENE KING (Unloading) - Completed out of time (-31 minutes).&lt;br /&gt;
{{Note}} The job window for Honest Lawyer [Scunthorpe] should be set to 1000-1200 for this to work as described above.&lt;br /&gt;
&lt;br /&gt;
Ensure that there is at least one other load on another depot, day, driver and vehicle. Ensure that there are other pending loads.&lt;br /&gt;
&lt;br /&gt;
Ensure that the system type is configured as not PvA.&lt;br /&gt;
&lt;br /&gt;
Ensure the available Depot list for the report is configured for the two depots.&lt;br /&gt;
|Objective=To test that: the report parameters screen acts as required; the report is produced as required; the report is formatted and contains the data as required.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Parameter Screen/Basic Report Production.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select the Reports menu item.&lt;br /&gt;
|Result=The Reports screen should show, requesting the user to &amp;quot;Please select a Report&amp;quot;. No parameters should be shown. The Drop-down list should contain the &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; item.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select the &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; item.&lt;br /&gt;
|Result=The parameters required for this report are shown.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Set the Site System Type to &amp;quot;PvA&amp;quot;. Select the Reports menu item.&lt;br /&gt;
|Result=The Reports screen should show, automatically showing the &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; item. The parameters required for this report are shown.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for the default parameters.&lt;br /&gt;
|Result=The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - ALL for all parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Depot.&lt;br /&gt;
|Result=The Drop-down list for Depot should show all configured depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Depot ID and Name selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Driver.&lt;br /&gt;
|Result=The Drop-down list for Driver should show all drivers for all depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Driver ID and Name selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Vehicle.&lt;br /&gt;
|Result=The Drop-down list for Vehicle should show all vehicles for all depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Vehicle ID and Reg selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Customer.&lt;br /&gt;
|Result=The Drop-down list for Customer should show all customers for all depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Customer Code and Name selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select all Depots. Select a Customer, Driver and Vehicle. Change the Date. Select a single Depot.&lt;br /&gt;
|Result=The Drop-down lists for Driver, Vehicle and Customer should change to have only values associated to the selected depot. These parameters should reset to the default &amp;quot;All ...&amp;quot; values. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a selection of parameters that produces no results on any page. Check the report.&lt;br /&gt;
|Result=All pages (tabs) should be produced. The parameter page should be produced as expected. All other pages should have headers, tables, titles and, where applicable, footers with zero totals.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Test that the combination of selected parameters produces the correct selected results.&lt;br /&gt;
|Result=A combination of selected parameters builds the file name correctly. The Report is produced with a correct parameter page. The selected data on each report page is correct.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Report Details&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select parameters to show all loads for the all depots, customers, drivers and a date range that covers both completed loads and some incomplete loads.&lt;br /&gt;
|Result=The report is created. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Plan vs Actual Detail Tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected. The Plan, Actual, Variance and Percentage Variance columns for Distance, Work Time and Travel Time are all populated correctly for each job. For Loading, Unloading and Break jobs, the Account Number and Postcode are greyed out with no values. For Loading jobs, the Distance and Travel Time sections are greyed out with no values. The total values are correct for each of the summarised columns.  The Driver-generated beak is visible. The travel and work time and distance on the driver-generated break is taken off the job during which it was completed.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Plan vs Actual Summary Tab.&lt;br /&gt;
|Result=Only the 2 completed loads are selected. The Plan, Actual, Variance and Percentage Variance columns for Distance, Work Time and Travel Time are all populated correctly for each load, summarising the values from the Details tab above. The total values are correct for each of the summarised columns.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Time Detail tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected, excluding all breaks and loading/unloading jobs. Only the drops are displayed, ignoring multiple jobs at the same stop. The Job Time window is displayed if present. The planned and arrival times are displayed. The time variance is displayed correctly. Variances or +/- 30 minutes are displayed with a red background, within the tolerance as a green background. The Time Window is correctly shown as being achieved (with a green background) or not achieved (with a red background).&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Time Window Summary tab.&lt;br /&gt;
|Result=Only the 2 completed loads are selected. The No. Planned and Achieved against each load correctly total for the drops only (ignoring multiple jobs at the same stop), summarising the values from the Time Detail tab above. The Variance is calculated correctly. The % Compliance is calculated and labelled correctly. The total values are correct for each of the summarised columns.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Time Window Exception tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected, excluding all breaks and loading/unloading jobs. Only the drops are displayed, ignoring multiple jobs at the same stop. Only the drops with an arrival time outside the time window are displayed. The Job Time window and Arrival Time are displayed.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Arrival Time Exception tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected, excluding all breaks and loading/unloading jobs. Only the drops are displayed, ignoring multiple jobs at the same stop. Only the drops with an arrival time differing from the planned time by more than 30 minutes window are displayed. The Planned and Arrival Time are displayed. The Variance is calculated and displayed correctly.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|Ref2=336015/332569-6 WEBFLEET-ePOD Job Update Interface &lt;br /&gt;
|RefV2=1.0&lt;br /&gt;
|RefDate2=23/08/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=1.5&lt;br /&gt;
|TS=1.5&lt;br /&gt;
|DEV=6.75&lt;br /&gt;
|ST=1.25&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.50&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336019_332569-9_GK_Planned_Vs_Actual_Report&amp;diff=3513</id>
		<title>FS 336019 332569-9 GK Planned Vs Actual Report</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336019_332569-9_GK_Planned_Vs_Actual_Report&amp;diff=3513"/>
		<updated>2016-08-23T12:16:30Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title| Planned Vs Actual Report}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336019 332569-9}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
A series of Planned vs Actuals reports, comparing planned data from DiPS and actual data from TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
== Planned Vs Actual Reporting ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report is expected to be run daily.&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots for that customer.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default value).&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default value).&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default value). &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report, and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only completed or cancelled jobs will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** If a parameter is left as All Values, this will not appear in the name, with the exception of Depot and Date Range.&lt;br /&gt;
&lt;br /&gt;
Depending on browser settings, this may either offer to save the report immediately, or open immediately in the browser. If opened in the browser, the report may be saved locally.&lt;br /&gt;
&lt;br /&gt;
An example report has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders&lt;br /&gt;
* All titles and summary lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced.&lt;br /&gt;
*	Work time is defined as the time in between arriving at a location and departing a location. The working time consists of loading/unloading and paperwork&lt;br /&gt;
*	Travel time is defined as the time in between the start and arrive times stored against a job, either travelling on Collections/Deliveries or travel to/from the depot.&lt;br /&gt;
* Route displayed on the reports will be the new Route field added to the load, if this is not blank, otherwise this will be the default Load ID.&lt;br /&gt;
* Date displayed on the report will be the Planned End Date, when the delivery should be completed.&lt;br /&gt;
* Data on the report will be primarily sorted by Planned End Date, Vehicle Reg and Route, then any additional data specific to that tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the sum of the planned values against the jobs on the load.&lt;br /&gt;
* Actual - the sum of the actual values against the jobs on the load.&lt;br /&gt;
* Var - the planned summed value minus the actual summed value.&lt;br /&gt;
* % Var - the summed variance divided by the summed planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes).&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the planned values against the job.&lt;br /&gt;
* Actual - the actual values against the job.&lt;br /&gt;
* Var - the planned value minus the actual value.&lt;br /&gt;
* % Var - the variance divided by the planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
Breaks and Depot (Loading/Unloading) jobs will not include account number and postcode.&lt;br /&gt;
&lt;br /&gt;
Loading jobs will not include Distance or Travel Time variances.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance.&lt;br /&gt;
&lt;br /&gt;
The report will summarise at Load (route) and will display:&lt;br /&gt;
* No. Planned - a sum of the number of collection or delivery jobs on the load.&lt;br /&gt;
* No. Achieved - a sum of the number of collection or delivery jobs on the load where the actual arrival time is within the window.&lt;br /&gt;
* Var - No. Planned minus No. Achieved.&lt;br /&gt;
* % Var - No. Achieved divided by No. Planned, expressed as a percentage, rounded up. {{Note}} This is not the percentage variance, this is the percentage compliance. The column title will be labelled as '% Comp' rather than '% Var' to reflect this.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) or the planned arrival time, otherwise red background.&lt;br /&gt;
* Achieved Time Window - Yes or, depending if the arrival time is within the time window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Arrival Time - the actual Arrival Time.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
The jobs must be received from DiPS for the planned values.&lt;br /&gt;
&lt;br /&gt;
The jobs must be sent to TomTom WEBFLEET and updated from there to achieve the actual values. &lt;br /&gt;
The set-up of these interfaces are covered in the relevant specification referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
''Reports''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
The data used by these reports is derived directly from the DiPS interface (for planned information) and WEBFLEET Update interface (for actuals information), defined in the relevant specifications referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Functional Description  =&lt;br /&gt;
&lt;br /&gt;
== Admin Parameters Screen ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the system type is &amp;quot;PvA&amp;quot; (EPL_SYSTEM_TYPE of EPOD_LOAD), the drop-down list of reports should have the value &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; pre-selected and the parameters already shown. If the system type is any other value, the report screen should operate as now, in that the reports drop-down list should be showing &amp;quot;Please select a Report&amp;quot;, with no parameters shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots (option &amp;quot;All Depots&amp;quot;). The list of depots accessible for the report will be set against the system in pre-configured List Items for Greene King (EPOD_LISTS and EPOD_LIST_ITEMS). {{Note}} If the Depot selected is changed, any select value in Driver, Vehicle and Customer Account Number will be reset.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default option &amp;quot;All Drivers&amp;quot;). This list of drivers will be built after the selection of Depot. The drivers will be listed showing Site and Name and sorted this way e.g. &amp;quot;EAS-A Driver&amp;quot;, This is built from EPL_SITE_ID and EPL_USER_NAME from EPOD_USER.&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default option &amp;quot;All Vehicles&amp;quot;). This list of vehicles will be built after the selection of Depot. The vehicles will be listed showing Site and Reg and sorted this way e.g. &amp;quot;EAS-AB12 CDE&amp;quot;, This is built from EPL_SITE_ID and EPL_VEHICLE_REG from EPOD_VEHICLE.&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier. If the From date selected is after the To date, the To date will default to the From date. If the To date selected is before the From date, the From date will default to the To date. The user will be provided a Calendar pop-up to select dates.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default option &amp;quot;All Customers&amp;quot;). This list of Customers will be built after the selection of Depot. The customers will be listed showing Site and Name and sorted this way e.g. &amp;quot;EAS-Ashby Mill Road Club [Scunthorpe]&amp;quot;, This is built from EPL_SITE_ID and EPL_CUSTOMER_NAME from EPOD_CUSTOMER.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} Parameters selected as &amp;quot;All ...&amp;quot; will have the parameter value as blank.&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report by clicking '''Create Excel Spreadsheet''' and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
{{Note}}:&lt;br /&gt;
* Only completed or cancelled jobs and loads will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** Depot: The selected Depot ID (EPL_SITE_ID) or &amp;quot;ALL&amp;quot;, plus an underscore (_).&lt;br /&gt;
** Driver: The selected Driver ID (EPL_USER_ID) plus an underscore (_), or omitted if All selected.&lt;br /&gt;
** Vehicle: The selected Vehicle ID (EPL_VEHICLE_ID) plus an underscore (_), or omitted if All selected.&lt;br /&gt;
** Customer: The selected Customer Code (EPL_CUSTOMER_CODE) with all spaces replaced as underscores, plus an underscore (_), or omitted if All selected.&lt;br /&gt;
** Date: The Date From and To, in YYYYMMDD format, concatenated with an underscore (_).&lt;br /&gt;
&lt;br /&gt;
Examples: &lt;br /&gt;
* Where all parameters are left at the default:&lt;br /&gt;
** PVA_ALL_20160629_20160629.xls&lt;br /&gt;
* Where a specific depot (Eastwood) is selected:&lt;br /&gt;
** PVA_EAS_20160629_20160629.xls&lt;br /&gt;
* Where a specific driver (A Driver) is selected:&lt;br /&gt;
** PVA_EAS_adriver_20160629_20160629.xls&lt;br /&gt;
* Where a specific vehicle (AB12 BCD) is selected:&lt;br /&gt;
** PVA_EAS_adriver_AB12BCD_20160629_20160629.xls&lt;br /&gt;
* Where a specific Customer (268349  001 - Ashby Mill Road Club [Scunthorpe]) is selected:&lt;br /&gt;
** PVA_EAS_adriver_AB12BCD_268349__001_20160629_20160629.xls&lt;br /&gt;
* Where a 3-day range is selected (from 27/06 to 29/06):&lt;br /&gt;
** PVA_EAS_adriver_AB12BCD_268349__001_20160627_20160629.xls&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The selected parameters should be displayed as follows:&lt;br /&gt;
* All parameters will be labelled and have values and descriptions displayed as below: &lt;br /&gt;
** Label &amp;quot;Depot&amp;quot;: The selected Depot ID (value) and Name (description) (EPL_SITE_ID and EPL_DESCRIPTION) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
** Label &amp;quot;Driver&amp;quot;: The selected Driver ID (value) and Name (description) (EPL_USER_ID and EPL_USER_NAME) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
** Label &amp;quot;Vehicle&amp;quot;: The selected Vehicle ID (value) and Reg (description) (EPL_VEHICLE_ID and EPL_VEHICLE_REG) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
** Label &amp;quot;Date Range&amp;quot;: The Date From and To, in YYYYMMDD format.&lt;br /&gt;
** Label &amp;quot;Customer&amp;quot;: The selected Customer Code (value) and Name (description) (EPL_CUSTOMER_CODE and EPL_CUSTOMER_NAME) or &amp;quot;All&amp;quot; if the parameter value is blank.&lt;br /&gt;
* The columns used will be as follows:&lt;br /&gt;
** C - The parameter Label.&lt;br /&gt;
** E - The parameter value. For Date Range, the From date.&lt;br /&gt;
** F - &amp;quot; to &amp;quot;, only for the Date Range parameter, blank for all others.&lt;br /&gt;
** G - The parameter Name if the parameter value is not blank. For Date Range, the To date.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone. This is specified as the title of each page section following.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, an additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders.&lt;br /&gt;
* All page titles, column titles and total lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced by manually modifying the report after production.&lt;br /&gt;
* Page headers, Tables, Titles and Totals (where required) will always be displayed, even if there are no other rows on the table. In this case, for a page that displays a totals row, the total row will show zero values in the summarised columns.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Distance (KMs)&lt;br /&gt;
** Plan: The sum of the planned travel distance on all the jobs on the load (summed from EPL_DISTANCE_PLANNED).&lt;br /&gt;
** Actual: The sum of the actual travel distance on all the jobs on the load (summed from EPL_DISTANCE_ACTUAL).&lt;br /&gt;
** Var: the planned summed travel distance minus the actual summed travel distance.&lt;br /&gt;
** % Var: the summed variance (calculated above) divided by the summed planned value calculated above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
* Work Time (Mins)&lt;br /&gt;
** Plan: The sum of the planned work time on all the jobs on the load (summed from EPL_WORK_PLANNED).&lt;br /&gt;
** Actual: The sum of the actual work time on all the jobs on the load (summed from EPL_WORK_ACTUAL).&lt;br /&gt;
** Var: the planned summed work time minus the actual summed work time.&lt;br /&gt;
** % Var: the summed variance (calculated above) divided by the summed planned value calculated above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
* Travel Time (Mins)&lt;br /&gt;
** Plan: The sum on the planned travel time on all the jobs on the load (summed from EPL_TRAVEL_PLANNED).&lt;br /&gt;
** Actual: The sum of the actual travel time on all the jobs on the load (summed from EPL_DRIVING_TIME).&lt;br /&gt;
** Var: the planned summed travel time minus the actual summed travel time.&lt;br /&gt;
** % Var: the summed variance (calculated above) divided by the summed planned value calculated above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be calculated with a SQL statement specific to this report, summing, grouping and ordering in the mechanism specified above. The following is an example of how this might be achieved for distance:&lt;br /&gt;
    SELECT &lt;br /&gt;
    , el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_CODE &lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    , SUM(ej.EPL_DISTANCE_PLANNED) DistancePlan&lt;br /&gt;
    , SUM(ej.EPL_DISTANCE_ACTUAL) DistanceActual&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    GROUP BY &lt;br /&gt;
    el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    ORDER BY&lt;br /&gt;
    el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
&lt;br /&gt;
Variance and Percentage values will be calculated from the returned Plan and Actual values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes). This will be calculated by the process. The total line will have all columns in bold.&lt;br /&gt;
&lt;br /&gt;
The columns totalled in detail are:&lt;br /&gt;
* Route - A count of the lines.&lt;br /&gt;
* Distance&lt;br /&gt;
** Plan - A sum of all the row values.&lt;br /&gt;
** Actual - A sum of all the row values.&lt;br /&gt;
** Var - A sum of all the row values.&lt;br /&gt;
** % Var - The summed Var value divided by the summed Plan value.&lt;br /&gt;
* Work Time - All columns totalled as above.&lt;br /&gt;
* Travel Time - All columns totalled as above.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). This cell should be blank and have a grey background if the job is a depot loading or unloading job (EPL_LOADING_TYPE is not blank) or the job is a Break (EPL_CUSTOMER_CODE is &amp;quot;BREAK&amp;quot;).&lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). This cell should be blank and have a grey background if the job is a depot loading or unloading job (EPL_LOADING_TYPE is not blank) or the job is a Break (EPL_CUSTOMER_CODE is &amp;quot;BREAK&amp;quot;).&lt;br /&gt;
* Distance (KMs)&lt;br /&gt;
** Plan: The planned travel distance of the job on the load (EPL_DISTANCE_PLANNED). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Actual: The actual travel distance of the job on the load (EPL_DISTANCE_ACTUAL). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Var: the planned travel distance minus the actual travel distance. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** % Var: the variance (calculated above) divided by the planned value above, expressed as a percentage with 1 decimal place. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
* Work Time (Mins)&lt;br /&gt;
** Plan: The planned work time of the job on the load (EPL_WORK_PLANNED).&lt;br /&gt;
** Actual: The actual work time of the job on the load (EPL_WORK_ACTUAL).&lt;br /&gt;
** Var: the planned work time minus the actual work time.&lt;br /&gt;
** % Var: the variance (calculated above) divided by the planned value above, expressed as a percentage with 1 decimal place.&lt;br /&gt;
* Travel Time (Mins)&lt;br /&gt;
** Plan: The planned travel time of the job on the load (EPL_TRAVEL_PLANNED). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Actual: The actual travel time of the job on the load (EPL_DRIVING_TIME). This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** Var: the planned travel time minus the actual travel time. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
** % Var: the variance (calculated above) divided by the planned value above, expressed as a percentage with 1 decimal place. This cell should be blank and have a grey background if the job is a depot loading job (EPL_LOADING_TYPE is &amp;quot;L&amp;quot;) and the planned and actual distance travelled is 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Customer Names and Post Codes should be obtained from the Job Address if this exists for the job type (EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB_ADDRESS linked from EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB respectively). If this record exists, use EPL_NAME and EPL_POSTCODE respectively, if the values are not blank. If this record does not exist or the values are blank, use EPL_CUSTOMER_NAME and EPL_POSTCODE respectively from EPOD_CUSTOMER, linked from EPL_CUSTOMER_CODE of EPOD_JOB.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Driver-generated Break Jobs will have the same sequence as the following or in-progress job when generated. To ensure that they are displayed after they job that they interrupt, the result will also be sorted in Actual Start Date and Time sequence as well as Job Sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be returned with a SQL statement specific to this report, ordering in the mechanism specified above. The following is an example of how this might be achieved for distance:&lt;br /&gt;
    SELECT &lt;br /&gt;
      el.EPL_SITE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    , el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , ej.EPL_CUSTOMER_CODE&lt;br /&gt;
    , ec.EPL_CUSTOMER_NAME&lt;br /&gt;
    , ec.EPL_POSTCODE&lt;br /&gt;
    , eja.EPL_NAME&lt;br /&gt;
    , eja.EPL_POSTCODE&lt;br /&gt;
    , ej.EPL_JOB_TYPE&lt;br /&gt;
    , ej.EPL_LOADING_TYPE&lt;br /&gt;
    , ej.EPL_DISTANCE_PLANNED&lt;br /&gt;
    , ej.EPL_DISTANCE_ACTUAL&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    JOIN EPOD_CUSTOMER ec&lt;br /&gt;
        ON ec.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND ec.EPL_CUSTOMER_CODE= ej.EPL_CUSTOMER_CODE&lt;br /&gt;
    LEFT JOIN EPOD_JOB_ADDRESS eja&lt;br /&gt;
        ON eja.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND eja.EPL_JOB_TYPE = ej.EPL_JOB_TYPE&lt;br /&gt;
        AND eja.EPL_JOB_ID = ej.EPL_JOB_ID&lt;br /&gt;
    WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    ORDER BY&lt;br /&gt;
    el.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
    , ev.EPL_VEHICLE_REG&lt;br /&gt;
    , el.EPL_ROUTE_ID&lt;br /&gt;
    , el.EPL_LOAD_ID &lt;br /&gt;
    , ej.EPL_SEQUENCE&lt;br /&gt;
    , ej.EPL_START_ACTUAL_DATE, ej.EPL_START_ACTUAL_TIME&lt;br /&gt;
&lt;br /&gt;
Variance and Percentage values will be calculated from the returned Plan and Actual values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values. This will be calculated by the process. The total line will have all columns in bold.&lt;br /&gt;
&lt;br /&gt;
The columns totalled in detail are:&lt;br /&gt;
* Distance&lt;br /&gt;
** Plan - A sum of all the row values.&lt;br /&gt;
** Actual - A sum of all the row values.&lt;br /&gt;
** Var - A sum of all the row values.&lt;br /&gt;
** % Var - The summed Var value divided by the summed Plan value.&lt;br /&gt;
* Work Time - All columns totalled as above.&lt;br /&gt;
* Travel Time - All columns totalled as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance against the delivery/collection windows provided.&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* No. Planned: The number of jobs on the load with a unique sequence (EPL_SEQUENCE, excluding Loading/Unloading (EPL_LOADING_TYPE is not blank) or Break (EPL_CUSTOMER_CODE is &amp;quot;BREAK&amp;quot;) jobs.&lt;br /&gt;
* No. Achieved: Of the jobs selected, those with a delivery time (EPL_END_ACTUAL_TIME) within the Job or Customer Delivery Windows - see below.&lt;br /&gt;
* Var: Calculated Planned above minus calculated achieved above&lt;br /&gt;
* % Comp: {{Note}} This is a percentage Compliance column, not a percentage variance column. Calculated Achieved above divided by calculated Planned above, with no decimal places.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be returned with a SQL statement specific to this report, ordering in the mechanism specified above. The following is an example of how this might be achieved:&lt;br /&gt;
    SELECT &lt;br /&gt;
          ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , ej.EPL_VEHICLE_REG&lt;br /&gt;
        , COUNT(ej.EPL_SEQUENCE) NoPlanned&lt;br /&gt;
        , SUM(Achieved) Achieved&lt;br /&gt;
    FROM (&lt;br /&gt;
    SELECT &lt;br /&gt;
          ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_SEQUENCE &lt;br /&gt;
        , MAX(el.EPL_LOAD_END_PLANNED_DATE) EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , MAX(ev.EPL_VEHICLE_REG) EPL_VEHICLE_REG&lt;br /&gt;
        , MAX(ej.EPL_CUSTOMER_CODE) EPL_CUSTOMER_CODE&lt;br /&gt;
        , MAX(CASE WHEN &lt;br /&gt;
            ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwj.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwj.ETW_TIME_END, 23599999) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwc.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwc.ETW_TIME_END, 23599999) &lt;br /&gt;
            THEN 1 ELSE 0 END) Achieved&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwj&lt;br /&gt;
        ON etwj.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwj.ETW_TYPE = 'J'&lt;br /&gt;
        AND etwj.ETW_FK_ID = ej.EPL_JOB_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwc&lt;br /&gt;
        ON etwc.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwc.ETW_TYPE = 'C'&lt;br /&gt;
        AND etwc.ETW_FK_ID = ej.EPL_CUSTOMER_CODE&lt;br /&gt;
      WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND ej.EPL_LOADING_TYPE = ''&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    GROUP BY ej.[EPL_SITE_ID]&lt;br /&gt;
          ,ej.[EPL_LOAD_ID]&lt;br /&gt;
          ,ej.[EPL_SEQUENCE]&lt;br /&gt;
    ) as ej&lt;br /&gt;
    GROUP BY ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , ej.EPL_VEHICLE_REG&lt;br /&gt;
{{Note}} The SQL shown here consolidated the Customer and Job windows. The report will display only the achievement status and window against a single Job window. With the data expected in this implementation, this process will work. If customer windows are added or multiple windows are required, the achievement status will show correctly, however changes will be required to display the window correctly. These changes should be included as part of the work to implement multiple windows.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values. This will be calculated by the process. The total line will have all columns in bold.&lt;br /&gt;
&lt;br /&gt;
The columns totalled in detail are:&lt;br /&gt;
* No. Planned - A sum of all the row values.&lt;br /&gt;
* No. Achieved - A sum of all the row values.&lt;br /&gt;
* Var - A sum of all the row values.&lt;br /&gt;
* % Comp - The summed variance plus the summed No. Planned, divided by the summed No. Planned, expressed as a percentage with no decimal places.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route Number: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). &lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). &lt;br /&gt;
* Time Window: Concatenated from the job time window (ETW_TIME_START and ETW_TIME_END, if either is a non-zero value)&lt;br /&gt;
* Planned Time: The Planned Start Time (EPL_START_PLANNED_TIME).&lt;br /&gt;
* Arrival Time: The Arrival Time (EPL_ARRIVAL_TIME) if present, else the Actual End Time (EPL_END_ACTUAL_TIME). Referred to as the Arrival Time here on in.&lt;br /&gt;
* Var: The Arrival Time above minus the planned time above, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) of the planned arrival time, otherwise red background.&lt;br /&gt;
* Time Window Achieved Yes/No: Whether the arrival time was within the Job Time Window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Customer Names and Post Codes should be obtained from the Job Address if this exists for the job type (EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB_ADDRESS linked from EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB respectively). If this record exists, use EPL_NAME and EPL_POSTCODE respectively, if the values are not blank. If this record does not exist or the values are blank, use EPL_CUSTOMER_NAME and EPL_POSTCODE respectively from EPOD_CUSTOMER, linked from EPL_CUSTOMER_CODE of EPOD_JOB.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The values should be returned with a SQL statement specific to this report, ordering in the mechanism specified above. The following is an example of how this might be achieved:&lt;br /&gt;
    SELECT &lt;br /&gt;
          ej.EPL_SITE_ID&lt;br /&gt;
        , ej.EPL_LOAD_ID &lt;br /&gt;
        , ej.EPL_SEQUENCE &lt;br /&gt;
        , MAX(el.EPL_LOAD_END_PLANNED_DATE) EPL_LOAD_END_PLANNED_DATE&lt;br /&gt;
        , MAX(ev.EPL_VEHICLE_REG) EPL_VEHICLE_REG&lt;br /&gt;
        , MAX(ej.EPL_CUSTOMER_CODE) EPL_CUSTOMER_CODE&lt;br /&gt;
        , MAX(ec.EPL_CUSTOMER_NAME) EPL_CUSTOMER_NAME&lt;br /&gt;
        , MAX(ec.EPL_POSTCODE) EPL_CUSTOMER_POSTCODE&lt;br /&gt;
        , MAX(eja.EPL_NAME) EPL_NAME&lt;br /&gt;
        , MAX(eja.EPL_POSTCODE) EPL_POSTCODE&lt;br /&gt;
        , MAX(ej.EPL_JOB_TYPE) EPL_JOB_TYPE&lt;br /&gt;
        , MAX(ej.EPL_LOADING_TYPE) EPL_LOADING_TYPE&lt;br /&gt;
        , MAX(ej.EPL_START_PLANNED_TIME) EPL_START_PLANNED_TIME&lt;br /&gt;
        , MAX(CASE WHEN ej.EPL_ARRIVAL_TIME &amp;gt; 0 THEN ej.EPL_ARRIVAL_TIME ELSE ej.EPL_END_ACTUAL_TIME END) EPL_ARRIVAL_TIME&lt;br /&gt;
        , MAX(etwj.ETW_TIME_START) ETW_TIME_START&lt;br /&gt;
        , MAX(etwj.ETW_TIME_END) ETW_TIME_END&lt;br /&gt;
        , MAX(CASE WHEN &lt;br /&gt;
            ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwj.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwj.ETW_TIME_END, 23599999) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;gt;= COALESCE(etwc.ETW_TIME_START, 0) &lt;br /&gt;
            AND ej.EPL_END_ACTUAL_TIME &amp;lt;= COALESCE(etwc.ETW_TIME_END, 23599999) &lt;br /&gt;
            THEN 1 ELSE 0 END) Achieved&lt;br /&gt;
    FROM EPOD_LOAD el &lt;br /&gt;
    JOIN EPOD_JOB ej&lt;br /&gt;
        ON ej.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ej.EPL_LOAD_ID = el.EPL_LOAD_ID&lt;br /&gt;
    JOIN EPOD_VEHICLE ev&lt;br /&gt;
        ON ev.EPL_SITE_ID = el.EPL_SITE_ID &lt;br /&gt;
        AND ev.EPL_VEHICLE_ID = el.EPL_VEHICLE_ID&lt;br /&gt;
    JOIN EPOD_CUSTOMER ec&lt;br /&gt;
        ON ec.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND ec.EPL_CUSTOMER_CODE= ej.EPL_CUSTOMER_CODE&lt;br /&gt;
    LEFT JOIN EPOD_JOB_ADDRESS eja&lt;br /&gt;
        ON eja.EPL_SITE_ID = ej.EPL_SITE_ID &lt;br /&gt;
        AND eja.EPL_JOB_TYPE = ej.EPL_JOB_TYPE&lt;br /&gt;
        AND eja.EPL_JOB_ID = ej.EPL_JOB_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwj&lt;br /&gt;
        ON etwj.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwj.ETW_TYPE = 'J'&lt;br /&gt;
        AND etwj.ETW_FK_ID = ej.EPL_JOB_ID&lt;br /&gt;
    LEFT JOIN [EPODV3_DEV].[dbo].EPOD_TIME_WINDOW etwc&lt;br /&gt;
        ON etwc.ETW_SITE_ID = ej.EPL_SITE_ID&lt;br /&gt;
        AND etwc.ETW_TYPE = 'C'&lt;br /&gt;
        AND etwc.ETW_FK_ID = ej.EPL_CUSTOMER_CODE&lt;br /&gt;
      WHERE ej.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND el.EPL_STATUS IN ('C', 'X')&lt;br /&gt;
        AND ej.EPL_LOADING_TYPE = ''&lt;br /&gt;
        ''-- Other Criteria Here''&lt;br /&gt;
    GROUP BY ej.[EPL_SITE_ID]&lt;br /&gt;
          ,ej.[EPL_LOAD_ID]&lt;br /&gt;
          ,ej.[EPL_SEQUENCE]&lt;br /&gt;
{{Note}} The SQL shown here consolidated the Customer and Job windows. The report will display only the achievement status and window against a single Job window. With the data expected in this implementation, this process will work. If customer windows are added or multiple windows are required, the achievement status will show correctly, however changes will be required to display the window correctly. These changes should be included as part of the work to implement multiple windows.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). &lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). &lt;br /&gt;
* Time Window: Concatenated from the job time window (ETW_TIME_START and ETW_TIME_END, if either is a non-zero value)&lt;br /&gt;
* Arrival Time: The Arrival Time (EPL_ARRIVAL_TIME) if present, else the Actual End Time (EPL_END_ACTUAL_TIME).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Customer Names and Post Codes should be obtained from the Job Address if this exists for the job type (EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB_ADDRESS linked from EPL_JOB_TYPE and EPL_JOB_ID of EPOD_JOB respectively). If this record exists, use EPL_NAME and EPL_POSTCODE respectively, if the values are not blank. If this record does not exist or the values are blank, use EPL_CUSTOMER_NAME and EPL_POSTCODE respectively from EPOD_CUSTOMER, linked from EPL_CUSTOMER_CODE of EPOD_JOB.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The same query used to create the Time Detail report may be used again here. The query should not be executed again - the same result recordset may be used again. In this case, however, only records that have a window that is not achieved should be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The columns displayed on the report are:&lt;br /&gt;
* Date: Load Planned End Date (EPL_LOAD_PLANNED_START_DATE).&lt;br /&gt;
* Vehicle Reg: The registration of the vehicle that completed the load (EPL_VEHICLE_REG of EPOD_VEHICLE linked from EPL_VEHICLE_ID of EPOD_LOAD).&lt;br /&gt;
* Route Number: The Route Code of the load (EPL_ROUTE_CODE). If this is blank, report the Load ID instead (EPL_LOAD_ID).&lt;br /&gt;
* Account Name: The name of the Customer on the job (see below). &lt;br /&gt;
* Account Number: The Customer Code from the job (EPL_CUSTOMER_CODE). &lt;br /&gt;
* Postcode: The Post Code from the job address or customer address (EPL_POSTCODE - see below). &lt;br /&gt;
* Planned Time: The Planned Start Time (EPL_START_PLANNED_TIME).&lt;br /&gt;
* Arrival Time: The Arrival Time (EPL_ARRIVAL_TIME) if present, else the Actual End Time (EPL_END_ACTUAL_TIME). Referred to as the Arrival Time here on in.&lt;br /&gt;
* Var: The Arrival Time above minus the planned time above, in minutes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The same query used to create the Time Detail report may be used again here. The query should not be executed again - the same result recordset may be used again. In this case, however, only records that have a calculated Var value of +/- 30 minutes should be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=To test the new Planned Vs Actual report content and production.&lt;br /&gt;
|MenuAccess=Reports&lt;br /&gt;
|Prerequisites=Data will be set up as per the test load in the DiPS sample file (Load 46004, Route E2010). The data should be completed as follows:&lt;br /&gt;
* GREENE KING - Completed in time in window.&lt;br /&gt;
* White Swan [Scotter] - Completed in time in window.&lt;br /&gt;
* Queensway [Scunthorpe] - Completed out of time (+35 minutes) in window.&lt;br /&gt;
* Ashby Mill Road Club [Scunthorpe] - Completed out of window (1031).&lt;br /&gt;
* Break 1 - Completed.&lt;br /&gt;
* Priory [Scunthorpe] - Completed in time in window.&lt;br /&gt;
* Honest Lawyer [Scunthorpe] - Completed out of window (1201).&lt;br /&gt;
* Bay Horse [Winteringham] - Completed in time with driver-generated break whilst driving.&lt;br /&gt;
* Break 2 - Cancelled.&lt;br /&gt;
* GREENE KING (Unloading) - Completed out of time (-31 minutes).&lt;br /&gt;
{{Note}} The job window for Honest Lawyer [Scunthorpe] should be set to 1000-1200 for this to work as described above.&lt;br /&gt;
&lt;br /&gt;
Ensure that there is at least one other load on another depot, day, driver and vehicle. Ensure that there are other pending loads.&lt;br /&gt;
&lt;br /&gt;
Ensure that the system type is configured as not PvA.&lt;br /&gt;
&lt;br /&gt;
Ensure the available Depot list for the report is configured for the two depots.&lt;br /&gt;
|Objective=To test that: the report parameters screen acts as required; the report is produced as required; the report is formatted and contains the data as required.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Parameter Screen/Basic Report Production.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select the Reports menu item.&lt;br /&gt;
|Result=The Reports screen should show, requesting the user to &amp;quot;Please select a Report&amp;quot;. No parameters should be shown. The Drop-down list should contain the &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; item.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select the &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; item.&lt;br /&gt;
|Result=The parameters required for this report are shown.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Set the Site System Type to &amp;quot;PvA&amp;quot;. Select the Reports menu item.&lt;br /&gt;
|Result=The Reports screen should show, automatically showing the &amp;quot;TomTom Planned Vs Actuals Report&amp;quot; item. The parameters required for this report are shown.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for the default parameters.&lt;br /&gt;
|Result=The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - ALL for all parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Depot.&lt;br /&gt;
|Result=The Drop-down list for Depot should show all configured depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Depot ID and Name selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Driver.&lt;br /&gt;
|Result=The Drop-down list for Driver should show all drivers for all depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Driver ID and Name selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Vehicle.&lt;br /&gt;
|Result=The Drop-down list for Vehicle should show all vehicles for all depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Vehicle ID and Reg selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a single Customer.&lt;br /&gt;
|Result=The Drop-down list for Customer should show all customers for all depots. The report should run and offer to download the result with the correct naming convention. When downloaded, the Report Parameter page should show the selected parameters correctly - The Customer Code and Name selected, ALL for all other parameters, except Date Range, which should show today's date in the From and To values.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select all Depots. Select a Customer, Driver and Vehicle. Change the Date. Select a single Depot.&lt;br /&gt;
|Result=The Drop-down lists for Driver, Vehicle and Customer should change to have only values associated to the selected depot. These parameters should reset to the default &amp;quot;All ...&amp;quot; values. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Run the report for a selection of parameters that produces no results on any page. Check the report.&lt;br /&gt;
|Result=All pages (tabs) should be produced. The parameter page should be produced as expected. All other pages should have headers, tables, titles and, where applicable, footers with zero totals.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Test that the combination of selected parameters produces the correct selected results.&lt;br /&gt;
|Result=A combination of selected parameters builds the file name correctly. The Report is produced with a correct parameter page. The selected data on each report page is correct.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Report Details&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Select parameters to show all loads for the all depots, customers, drivers and a date range that covers both completed loads and some incomplete loads.&lt;br /&gt;
|Result=The report is created. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Plan vs Actual Detail Tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected. The Plan, Actual, Variance and Percentage Variance columns for Distance, Work Time and Travel Time are all populated correctly for each job. For Loading, Unloading and Break jobs, the Account Number and Postcode are greyed out with no values. For Loading jobs, the Distance and Travel Time sections are greyed out with no values. The total values are correct for each of the summarised columns.  The Driver-generated beak is visible. The travel and work time and distance on the driver-generated break is taken off the job during which it was completed.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Plan vs Actual Summary Tab.&lt;br /&gt;
|Result=Only the 2 completed loads are selected. The Plan, Actual, Variance and Percentage Variance columns for Distance, Work Time and Travel Time are all populated correctly for each load, summarising the values from the Details tab above. The total values are correct for each of the summarised columns.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Time Detail tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected, excluding all breaks and loading/unloading jobs. Only the drops are displayed, ignoring multiple jobs at the same stop. The Job Time window is displayed if present. The planned and arrival times are displayed. The time variance is displayed correctly. Variances or +/- 30 minutes are displayed with a red background, within the tolerance as a green background. The Time Window is correctly shown as being achieved (with a green background) or not achieved (with a red background).&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Time Window Summary tab.&lt;br /&gt;
|Result=Only the 2 completed loads are selected. The No. Planned and Achieved against each load correctly total for the drops only (ignoring multiple jobs at the same stop), summarising the values from the Time Detail tab above. The Variance is calculated correctly. The % Compliance is calculated and labelled correctly. The total values are correct for each of the summarised columns.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Time Window Exception tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected, excluding all breaks and loading/unloading jobs. Only the drops are displayed, ignoring multiple jobs at the same stop. Only the drops with an arrival time outside the time window are displayed. The Job Time window and Arrival Time are displayed.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Check the Arrival Time Exception tab.&lt;br /&gt;
|Result=Only the 2 completed loads and completed or cancelled jobs on those loads are selected, excluding all breaks and loading/unloading jobs. Only the drops are displayed, ignoring multiple jobs at the same stop. Only the drops with an arrival time differing from the planned time by more than 30 minutes window are displayed. The Planned and Arrival Time are displayed. The Variance is calculated and displayed correctly.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|Ref2=336015/332569-6 WEBFLEET-ePOD Job Update Interface &lt;br /&gt;
|RefV2=1.0&lt;br /&gt;
|RefDate2=23/08/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=1.5&lt;br /&gt;
|TS=1.5&lt;br /&gt;
|DEV=6.75&lt;br /&gt;
|ST=1.25&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.50&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=OBSL Project Manager&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=Greene King Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336015_SCR-332569-6_GK_PvA_WEBFLEET-ePOD_Interface&amp;diff=3512</id>
		<title>FS 336015 SCR-332569-6 GK PvA WEBFLEET-ePOD Interface</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336015_SCR-332569-6_GK_PvA_WEBFLEET-ePOD_Interface&amp;diff=3512"/>
		<updated>2016-08-23T12:13:44Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|- WEBFLEET-ePOD Job Update Interface}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336015 - SCR-332569-6, SCR-332569-7, SCR332569-8}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into {{#var:System}} and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
{{SCR|Reference=332569|SCRNo=6&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into {{#var:System}} - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference=332569|SCRNo=7&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=REQ_314432_Greene_King_ePOD_Requirements#Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference=332569|SCRNo=8&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=REQ_314432_Greene_King_ePOD_Requirements#Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing {{#var:System}} User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_336015_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
This document covers 3 changes from the solution design:&lt;br /&gt;
* 336015 SCR-332569-6 WEBFLEET-ePOD Job Update Interface&lt;br /&gt;
* 336016 SCR-332569-8 Display location of TomTom Order Arrival&lt;br /&gt;
* 336017 SCR-332569-7 Update non-working time as a new break&lt;br /&gt;
The estimates in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]] are the combined values from these 3 changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface will be written to capture the events related to Orders and start/stop working time only - Geofence breaks will not be captured or created as part of this interface and will NOT debrief the loads and jobs in {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface identifies the Site for WEBFLEET updates by extracting it from the Order Number sent to WEBFLEET. This requires a fixed Job ID length of 10 characters, which is the default when sending orders to WEBFLEET. If the interface is used as described in the solution design, this interface will function automatically with no issues and no manual intervention. If any other mechanism is used to generate the orders in WEBFLEET, or the Job IDs are created at a different length, this update process will not work as described.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface identifies driver-generated Breaks through the external (WEBFLEET) vehicle ID in order to find the load that is in progress. Where the same vehicle is in use on multiple sites, this can compromise the interface for generation of breaks.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This document assumes that that the process will be used under conditions where only WEBFLEET is in use, '''not''' the full {{#var:System}} solution. Under the full {{#var:System}} solution, driver-generated breaks on the device will not be processed through this TomTom WEBFLEET interface. The system will then restrict the messages read from WEBFLEET to Order-only messages, rather than all messages. Care must be taken if implementing the full {{#var:System}} solution, that the old message queue is deleted after all messages are processed, and that the new message queue for orders is implemented ''before'' work starts under the new system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Drivers Pausing and Starting work will generate new breaks and update in progress jobs. Breaks will not be generated if the driver is already in-progress on a pre-existing break job. Pre-existing break jobs (for example, generated by DiPS) will not be updated or confirmed when the driver pauses or starts work on the WEBFLEET device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} When jobs are consolidated and will be actioned together on the device ((i.e. the linked ID is set to be the same value on multiple jobs), the actual values for work, travel and distance will still be updated on the job. This must be taken into account when producing the Planned Vs Actuals report, so that the values are reported on only one of the consolidated jobs on the load. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
The Sites must be pre-configured by the OBSL implementation team to point to the correct WEBFLEET fleet. This is a requirement of the Breaks solution. This is not configurable by the users. If this is not configured, driver-generated breaks from WEBFLEET will not be processed and added.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
N/A.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
For full functionality to be enabled, the {{#var:System}} system must be configured for PvA only, through the Site maintenance screen (on the ''Administration'' menu), ''Details'' tab, System Type setting.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_336015_Admin_Site.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Site Screen, showing prototyped System Type''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET-specific reason codes should be created for the Sites in advance:&lt;br /&gt;
* &amp;quot;TWCD&amp;quot; - description &amp;quot;TomTom WEBFLEET - Cancelled by Driver&amp;quot;.&lt;br /&gt;
* &amp;quot;TWRD&amp;quot; - description &amp;quot;TomTom WEBFLEET - Rejected by Driver&amp;quot;.&lt;br /&gt;
These reason codes should be created at Job and Detail level.&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_Codes.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Codes Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Set up the sites for WEBFLEET inbound interface.&lt;br /&gt;
&lt;br /&gt;
New EPOD_XF_CONFIG configurations will be required:&lt;br /&gt;
* EPL_XF_CONFIG_ID - A new configuration name to be applied to sites that do not have an Export Configuration yet, or the Export Configuration ID of the existing configuration.&lt;br /&gt;
* EPL_XF_ID - &amp;quot;TO&amp;quot; - TomTom Update&lt;br /&gt;
* EPL_SOAP_ACTION - &amp;quot;&amp;quot;&lt;br /&gt;
* EPL_SOAP_NS - &amp;quot;ser&amp;quot;&lt;br /&gt;
* EPL_SOAP_NS_PREFIX - &amp;lt;nowiki&amp;gt;&amp;quot;http://connect.webfleet.tomtomwork.com/services&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* EPL_WEB_USER - &amp;quot;admin&amp;quot;&lt;br /&gt;
* EPL_WEB_PASSWORD - &amp;quot;Matt3221&amp;quot;&lt;br /&gt;
* EPL_XF_RECIPIENT - Account - &amp;quot;logistics-obs&amp;quot;&lt;br /&gt;
* EPL_XF_DESTINATION - &amp;lt;nowiki&amp;gt;&amp;quot;https://soap.business.tomtom.com/v1.28/messagesService&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* EPL_XF_MSG_TYPE - API Key - &amp;quot;000fcb2a-6631-477a-b00e-de0505e7c7e3&amp;quot;&lt;br /&gt;
* EPL_XF_DIRECTION - &amp;quot;I&amp;quot;&lt;br /&gt;
* EPL_XF_TYPE - &amp;quot;SOAP&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_AutoExport.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Import/Export Config Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configuration must be added to all of the sites that requires TomTom interfaces for that WEBFLEET fleet. If a site already has a configuration attached to it, a configuration should be added to the same configuration name. {{Note}} This configuration of the interface will bring back all updates from the fleet, regardless of site. However, the interface configuration is required against all sites, so that the parameters may be used to identify to which site the vehicle belongs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles must be set up for WEBFLEET, with an external reference matching the object ID in WEBFLEET:&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_Vehicles.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Vehicles Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_WEBFLEET_Vehicles.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''WEBFLEET Vehicles Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== Database/DAL ==&lt;br /&gt;
New fields will be added to the EPOD_JOB table:&lt;br /&gt;
* EPL_WORK_ACTUAL - number - to hold the value of the Actual Work Time from WEBFLEET in whole numbers of minutes.&lt;br /&gt;
* EPL_ODO_START - float - to hold the Start Odometer reading from WEBFLEET.&lt;br /&gt;
* EPL_ODO_END - float - to hold the End Odometer reading from WEBFLEET.&lt;br /&gt;
All database packages and the DAL object will be changed to update and retrieve these new fields. &lt;br /&gt;
{{Note}} It is not necessary to add these fields as search-able items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following existing fields will be used to store Actual times and distances in addition to the new field above:&lt;br /&gt;
* EPL_DISTANCE_ACTUAL - Actual distance travelled. {{Note}} This must be changed to a float type (i.e. capable of storing decimal values).&lt;br /&gt;
* EPL_DRIVING_TIME - Actual driving time in whole numbers of minutes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The existing EPOD_LOAD fields EPL_LOAD_DISTANCE_PLANNED and EPL_LOAD_DISTANCE_ACTUAL should be changed to be a float type (i.e. capable of storing decimal values).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} As standard, these fields will be added to the standard XML Webservice Import and Export flows. These changes (and all others for the project) have been documented and referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]]. The standard XSD files describing the XML in detail will also be updated as part of this project. Note specifically that all fields changed to float type will need to have the type changed to &amp;quot;xsd:float&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A new field will be added to the EPOD_SITE table:&lt;br /&gt;
* EPL_EXT_FLEET - nvarchar(40) - to hold the value of the WEBFLEET fleet ID.&lt;br /&gt;
All database packages and the DAL object will be changed to update and retrieve this new field. &lt;br /&gt;
{{Note}} It is not necessary to add this field as search-able items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Indexes are required for the following tables, to improve efficiency of finding applicable vehicles to create breaks:&lt;br /&gt;
* EPOD_VEHICLE - Index EPV_EXT_IDX as EPL_EXT_REF, EPL_SITE_ID, EPL_VEHICLE_ID.&lt;br /&gt;
* EPOD_SITE - Index EPS_EXT_IDX as EPL_EXT_FLEET, EPL_SITE_ID.&lt;br /&gt;
* EPOD_LOAD - Index EPL_VEHICLE_STATUS_IDX as EPL_SITE_ID, EPL_VEHICLE_ID, EPL_STATUS, EPL_LOAD_ID&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Auto Import Process  ==&lt;br /&gt;
Retrieving messages from WEBFLEET is through the use of message queues, created and accessed through the TomTom WEBFLEET API, referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
A request to the created message queue will be made through the webservice method popQueueMessagesExtern.&lt;br /&gt;
&lt;br /&gt;
Before using popQueueMessagesExtern to retrieve outstanding messages, a queue must be created using the createQueueExtern method, using the same message class&lt;br /&gt;
parameter that is being provided with calls to popQueueMessagesExtern. In this case, the message class is 2 (all messages except tracking messages).&lt;br /&gt;
&lt;br /&gt;
{{Note}} The resulting data set is delivered in the language chosen in the WEBFLEET account and not on the language indicated in the lang parameter.&lt;br /&gt;
&lt;br /&gt;
The structure of the popQueueMessagesExtern method is as follows:&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ser:popQueueMessagesExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:popQueueMessagesExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This document assumes that that the process will be used under conditions where only WEBFLEET is in use, '''not''' the full {{#var:System}} solution. In this case, the message queue created and used for WEBFLEET messages will require to be filtered for all messages except tracking messages (filter attribute &amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot;). This attribute is used on all WEBFLEET webservice calls to create, pop and acknowledge messages from that queue. This is only the case when the Site's System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;. This is only required when creating breaks through WEBFLEET. When the full {{#var:System}} system is in use, this will not be the case, and therefore the WEBFLEET messages can be more strictly filtered to only Order-based messages (filter attribute &amp;quot;ORDER_RELATED&amp;quot;). The mcgClass filter attribute on ''all'' WEBFLEET message queue methods in this document should be set to &amp;quot;ORDER_RELATED&amp;quot; if the Site's System Type (EPL_SYSTEM_TYPE) is anything except &amp;quot;PvA&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Care must be taken if implementing the full {{#var:System}} solution, that the old message queue is deleted after all messages are processed, and that the new message queue for orders is implemented ''before'' work starts under the new system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The response to a popQueueMessagesExtern message is as follows:&lt;br /&gt;
      &amp;lt;ns3:popQueueMessagesExternResponse &lt;br /&gt;
            xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; &lt;br /&gt;
            xmlns:ns3=&amp;quot;http://connect.webfleet.tomtomwork.com/services&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;return&amp;gt;&lt;br /&gt;
            &amp;lt;statusCode&amp;gt;9195&amp;lt;/statusCode&amp;gt;&lt;br /&gt;
            &amp;lt;statusMessage&amp;gt;...Details of the status...&amp;lt;/statusMessage&amp;gt;&lt;br /&gt;
            &amp;lt;errors&amp;gt;&lt;br /&gt;
               &amp;lt;errorInfo objectName=&amp;quot;QueueServiceParameter&amp;quot; fieldName=&amp;quot;filter&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msg&amp;gt;A value is required&amp;lt;/msg&amp;gt;&lt;br /&gt;
               &amp;lt;/errorInfo&amp;gt;&lt;br /&gt;
            &amp;lt;/errors&amp;gt;&lt;br /&gt;
            &amp;lt;resultSize&amp;gt;0&amp;lt;/resultSize&amp;gt;&lt;br /&gt;
            &amp;lt;results xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/return&amp;gt;&lt;br /&gt;
      &amp;lt;/ns3:popQueueMessagesExternResponse&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The above response object also shows the result should an error occur. TomTom Responses have been handled before when processing sending orders to WEBFLEET in the Auto Export process (in method EPOD_SYS_EXPORT.TomTomOrdersProcessData). A similar process should be implemented here:&lt;br /&gt;
* If the status code returned is 0, the message was successful.&lt;br /&gt;
* If the status code returned is 8011, request limits were reached - in this case treat this as a failure.&lt;br /&gt;
* If the status code returned is 9303, the message queue request failed - see the following section.&lt;br /&gt;
* Any other status code returned should be treated as a failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the message queue request failed, it may not be set up yet. This is indicated by the errorInfo/msg tag starting with &amp;quot;WFCQ_E0022&amp;quot;. If any other error message is received, write an XF Audit record, indicating &amp;quot;Unable to read from queue&amp;quot; plus the description from the msg tag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the queue has not been set up yet, the process should create it at this time. This is through a call to the createQueueExtern webservice method, populated as follows:&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ser:createQueueExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:createQueueExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To call this, simply replace the outer tags of the previous request and resend the SOAP request.&lt;br /&gt;
&lt;br /&gt;
The response object for this call is identical to the response to all other calls, except that the outer tag is createQueueExternResponse. Anything other than &amp;quot;0&amp;quot; (Success) in the status code means a failure to create the queue. In the case of failure, write an XF Audit record, indicating &amp;quot;Creation of queue failed&amp;quot; plus the description from the msg tag.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If the queue is created here, there is no need to continue with the process, as there will be no messages in the queue yet - the process can finish here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The results tag will contain the results in sub-tags called resultItem. Example files exist for this data returned. The following are example result items for each item that the process will be dealing with:&lt;br /&gt;
&lt;br /&gt;
'''Starting an Order:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949248423&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:05:06.008Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349133&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852108&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:05:04Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;241&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''In progress to an Order:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949319260&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:06:19.388Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000761&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: est. arrival 16:24, 11 mi to destination&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852109&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:06:16Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;241&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;eta&amp;gt;2016-06-20T15:24:56Z&amp;lt;/eta&amp;gt;&lt;br /&gt;
                  &amp;lt;distance&amp;gt;17249&amp;lt;/distance&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''On and Off a Break:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949851082&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:15:48.686Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;DATA&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;80000719&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;John Doe: Pause started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverNo driverNo=&amp;quot;44&amp;quot; driverUid=&amp;quot;1-44036-4637202118&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pndconn&amp;gt;0&amp;lt;/pndconn&amp;gt;&lt;br /&gt;
                  &amp;lt;tripMode&amp;gt;1&amp;lt;/tripMode&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852114&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:14:05Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                     &amp;lt;workstate&amp;gt;PAUSE&amp;lt;/workstate&amp;gt;&lt;br /&gt;
                     &amp;lt;sourceDevice&amp;gt;PND&amp;lt;/sourceDevice&amp;gt;&lt;br /&gt;
                     &amp;lt;eventTime&amp;gt;2016-06-20T15:14:05Z&amp;lt;/eventTime&amp;gt;&lt;br /&gt;
                  &amp;lt;/pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949851641&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:15:49.258Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;DATA&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;80000719&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;John Doe: Work started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverNo driverNo=&amp;quot;44&amp;quot; driverUid=&amp;quot;1-44036-4637202118&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;tripMode&amp;gt;2&amp;lt;/tripMode&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852114&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:14:25Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                     &amp;lt;workstate&amp;gt;WORKING&amp;lt;/workstate&amp;gt;&lt;br /&gt;
                     &amp;lt;sourceDevice&amp;gt;PND&amp;lt;/sourceDevice&amp;gt;&lt;br /&gt;
                     &amp;lt;eventTime&amp;gt;2016-06-20T15:14:25Z&amp;lt;/eventTime&amp;gt;&lt;br /&gt;
                  &amp;lt;/pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Cancellation:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54950259474&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:23:18.805Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;111100734&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: cancelled &amp;quot;unexpected cow&amp;quot;&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852117&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:23:16Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;301&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;userText&amp;gt;unexpected cow&amp;lt;/userText&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Rejection:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54950499987&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:27:50.947Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;111100731&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000002: rejected &amp;quot;rejected by duck&amp;quot;&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349067&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852166&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:27:48Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;282&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;7&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000002&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;302&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;userText&amp;gt;rejected by duck&amp;lt;/userText&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Arrived at Delivery Location:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54856914199&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-17T14:06:20.409Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order 405511: arrived at delivery location&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349010&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2851930&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-17T14:06:19Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;2&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;405511&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;242&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Order Finished:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54856918353&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-17T14:06:24.714Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order 405511: finished&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349020&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2851940&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-17T14:06:23Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;405511&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;401&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All result items should be processed in sequence, by looping through them.&lt;br /&gt;
&lt;br /&gt;
The tags in this resultItem that are required are as follows:&lt;br /&gt;
* msgClass - for filtering messages.&lt;br /&gt;
* msgType - for filtering messages.&lt;br /&gt;
* objectNo - the vehicle's external (TomTom WEBFLEET) reference.&lt;br /&gt;
* odometer - the Odometer reading in KM. This may not be present, depending on hardware and configuration.&lt;br /&gt;
* pos/latitude - the latitude taken at the point of the message being generated, in micro degrees. This may not be present if there is not an adequate GPS signal at the time the message was created.&lt;br /&gt;
* pos/longitude - the longitude taken at the point of the message being generated, in micro degrees.  This may not be present if there is not an adequate GPS signal at the time the message was created.&lt;br /&gt;
* posTime - the date and time the message was created. ISO 8601-formatted date and time in the UTC timezone, combined representation in the extended format. Example: 2007-12-24T16:00:00Z.&lt;br /&gt;
* orderNo@orderNo - the unique order number passed to WEBFLEET when the order was created. For {{#var:System}} this will the value from External System ID, usually  the Site ID and Job ID combined. This differs for consolidated jobs and should be confirmed as to the actual value. &lt;br /&gt;
* orderState - for filtering messages.&lt;br /&gt;
* eta - the estimated time of arrival at the location for the order. ISO 8601-formatted date and time in the UTC timezone, combined representation in the extended format. Example: 2007-12-24T16:00:00Z.&lt;br /&gt;
* pndWorkingStateMessageData/workstate - determines break status.&lt;br /&gt;
* userText - the text entered when cancelling or rejecting an order on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}}&lt;br /&gt;
* A slash (/) in the tag name (e.g. pndWorkingStateMessageData/workstate) indicates that this is a sub-tag of another tag.&lt;br /&gt;
* An At symbol (@) in the tag name (orderNo@orderNo) indicates that this is an attribute of the named tag.&lt;br /&gt;
* Tags (and sub-tags) may not exist for each message, so each tag must be extracted and checked individually, or the errors handled when extracting values from tags.&lt;br /&gt;
* Longitudes and Latitudes are stored in micro-degrees and must be divided by 1,000,000 for storing in {{#var:System}}.&lt;br /&gt;
* Times are in xsd:dateTime format and must be converted. Furthermore, they are in UTC, and must be converted to the local server timezone when storing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''General Processing'''&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for the result msgClass tag values &amp;quot;DATA&amp;quot; and &amp;quot;ORDER&amp;quot; only.&lt;br /&gt;
* Convert the date/time from the posTime tag in the result.&lt;br /&gt;
* Convert the ETA date/time from the eta tag in the result, if present.&lt;br /&gt;
* Convert and validate the ODO reading from the odometer tag in the result, if present.&lt;br /&gt;
* Convert and validate the GPS location from the pos tag, sub-tags latitude and longitude in the result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Processing of result records with an order state value:'''&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for the result msgClass tag value &amp;quot;ORDER&amp;quot; and for the following orderState tag values:&lt;br /&gt;
** 221 - Pickup order started&lt;br /&gt;
** 222 - Arrived at Pickup location&lt;br /&gt;
** 241 - Delivery order started&lt;br /&gt;
** 242 - Arrived at Delivery location&lt;br /&gt;
** 301 - Cancelled&lt;br /&gt;
** 302 - Rejected&lt;br /&gt;
** 401 - Finished&lt;br /&gt;
* Get the Job or Jobs (EPOD_JOB) using the extracted Site (EPL_SITE_ID) and External System Reference (EPL_EXTERNAL_SYSTEM_ID) from the orderNo tag attribute value. {{Note}} There can be multiple jobs for the External System Reference.&lt;br /&gt;
* Stop processing this result record if this job is completed or cancelled (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;). Write an Audit record for the job, status &amp;quot;F&amp;quot; - see later for details.&lt;br /&gt;
* Get the Load (EPOD_LOAD) from the Job's Load ID (EPL_LOAD_ID). Store the Load ID in a list of loads processed from this response.&lt;br /&gt;
* Stop processing this result record if this load is completed or cancelled (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;). Write an Audit record for the job, status &amp;quot;F&amp;quot; - see later for details.&lt;br /&gt;
* Get the Vehicle (EPOD_VEHICLE) from the Load's Vehicle ID (EPL_VEHICLE_ID).&lt;br /&gt;
* Set the Vehicle's last position, date and time as follows:&lt;br /&gt;
** Set the Last Position (EPL_LAST_POSITION) from the converted values of the result tags latitude and longitude values, concatenated with a comma.&lt;br /&gt;
** Set the Last Position Date and time (EPL_LAST_POSITION_DATE and EPL_LAST_POSITION_TIME) from the extracted date and time from the tag posTime value, translated into OBS format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order states 221 and 241 (order started):&lt;br /&gt;
** Set the Actual Start date and time if not already populated (EPL_START_ACTUAL_DATE and EPL_START_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, set the Job or Jobs status (EPL_STATUS) to &amp;quot;I&amp;quot; - In Progress if not already in progress.&lt;br /&gt;
** If the job was not already in progress, find any other in-progress jobs against the load and set to status pending (EPL_STATUS set to &amp;quot;P&amp;quot;). If they already have a value in start odometer (EPL_ODO_START), set the distance travelled (EPL_DISTANCE_ACTUAL) to tag odometer value minus the value in the jobs' start odometer and zero the jobs' start odometer value.&lt;br /&gt;
** Set the ETA date and time against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME) from the tag eta value, if present, translated into OBS format.&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** If present in the incoming result, set the Start Odometer reading on the Job or Jobs (EPL_ODO_START) to the tag odometer value, if not already populated.&lt;br /&gt;
** If present in the incoming result, set the ODO start against the Load (EPL_MILEAGE_START) from the tag odometer value, if not already populated.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order states 222 and 242 (arrived at location):&lt;br /&gt;
** Update Arrival date and time against the job or jobs if not already populated (EPL_ARRIVAL_DATE and EPL_ARRIVAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order state 401 (Finished):&lt;br /&gt;
** Set the Actual End date and time if not already populated (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, set the Job or Jobs status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete if not already complete.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** If present in the incoming result, set the End Odometer reading on the Job to the tag odometer value.&lt;br /&gt;
** If not yet populated, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** If the status of the job (EPL_STATUS) is not &amp;quot;I&amp;quot; (In Progress), set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, complete all child records for the job or jobs (i.e. Containers, Products, Service Items), by setting the status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order status 301 (Cancelled) or order status 302 (Rejected):&lt;br /&gt;
** Set the Actual End date and time if not already populated (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag  posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, Set Job or Jobs status (EPL_STATUS) to &amp;quot;X&amp;quot; - Cancelled.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, Set the Reason Code against the Job or Jobs (EPL_REASON_CODE) to &amp;quot;TWCD&amp;quot; (for order status 301) or &amp;quot;TWRD&amp;quot; (for order status 302).&lt;br /&gt;
** Set the User Notes (EPL_USER_NOTES) against the Job or Jobs to be the tag userText value.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the incoming odometer value.&lt;br /&gt;
** If not yet populated, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, cancel all child records for the job or jobs (i.e. Containers, Products, Service Items), by setting the status (EPL_STATUS) to &amp;quot;X&amp;quot; - Cancelled.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order status 301 (Cancelled), 302 (Rejected) and 401 (Complete):&lt;br /&gt;
** Check all the jobs on the Load. &lt;br /&gt;
*** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, if all have been completed or cancelled, set the Load status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
*** If all have been completed or cancelled and if the tag odometer value is present, set the ODO end against the load if not set (EPL_MILEAGE_END) from this incoming value. Set the Actual Distance travelled against the load (EPL_LOAD_DISTANCE_ACTUAL) to be the ODO end (EPL_MILEAGE_END)) minus the ODO start (EPL_MILEAGE_START), if both values are non-zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ignore any other messages than the ones above, if the System Type (EPL_SYSTEM_TYPE) is ''not'' &amp;quot;PvA&amp;quot; - breaks will not be processed through this TomTom WEBFLEET interface when the full {{#var:System}} system is being run.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Processing of result records without an order state value:'''&lt;br /&gt;
These messages are used predominantly to generate breaks indicated by the driver.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Drivers Pausing and Starting work will generate new breaks and update in progress jobs. Breaks will not be generated if the driver is already in-progress on a pre-existing break job. Pre-existing break jobs (for example, generated by DiPS) will not be updated or confirmed when the driver pauses or starts work on the WEBFLEET device.&lt;br /&gt;
&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for tag msgClass value &amp;quot;DATA&amp;quot; and the following message types (extracted from the last 3 digits of the value in the msgType tag):&lt;br /&gt;
** 711 - Log-off driver (including tachograph driver card removed) - treat as end of break.&lt;br /&gt;
** 712 - Begin of work, driver indicated - treat as end of break.&lt;br /&gt;
** 713 - End of work, driver indicated - treat as end of break.&lt;br /&gt;
** 714 - Begin of break, driver indicated - treat as start of break.&lt;br /&gt;
** 715 - End of break, driver indicated - treat as end of break.&lt;br /&gt;
** 716 - Work status change, indicating driver role, old and new work status (applies to all PRO 71xx, 91xx devices when used with identified driver and Remote LINK Working Time). If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;PAUSE&amp;quot;, treat as start of break. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;WORKING&amp;quot;, treat as end of break.&lt;br /&gt;
** 717 - Work started (driver role and driver name indicated) - treat as end of break.&lt;br /&gt;
** 718 - Work ended (driver role and driver name indicated) - treat as end of break.&lt;br /&gt;
** 719 - Work time event, indicating driver. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;PAUSE&amp;quot;, treat as start of break. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;WORKING&amp;quot;, treat as end of break.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* If treating the message as Start of Break:&lt;br /&gt;
** Find the Vehicle(s) (EPOD_VEHICLE) through the External System Reference (EPL_EXT_REF) from tag objectNo attribute value, for sites that match the fleet parameter from the extraction (EPL_XF_RECIPIENT from EPOD_XF_CONFIG).&lt;br /&gt;
** Find the load in progress on that Site (EPL_SITE_ID) and vehicle ID (EPL_VEHICLE_ID), for all matching vehicles. If one is not found, do not process this message.&lt;br /&gt;
** Find a job (EPOD_JOB) on the load that is a break (either generated by the system or generated by DiPS) that is status In Progress (EPL_STATUS is &amp;quot;I&amp;quot;). If there is one, ignore this message, as a break is already started.&lt;br /&gt;
** Find the first job on that load that is not complete i.e. the status (EPL_STATUS) is &amp;quot;P&amp;quot; - Pending - or &amp;quot;I&amp;quot; - In Progress, ordering by the status In Progress (i.e. those jobs should be the first jobs found).&lt;br /&gt;
&amp;lt;!--** If this next job found is a break, update it as follows:&lt;br /&gt;
*** If the break job is not in progress (EPL_STATUS is not &amp;quot;I&amp;quot;), set the Actual Start date and time (EPL_START_ACTUAL_DATE and EPL_START_ACTUAL_TIME from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the Arrival date and time (EPL_ARRIVAL_DATE	and EPL_ARRIVAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the break job's ODO Start (EPL_ODO_START) from the tag odometer value if present, if the break job is not in progress (EPL_STATUS is not &amp;quot;I&amp;quot;).&lt;br /&gt;
*** Set the break job's status to In Progress (EPL_STATUS = &amp;quot;I&amp;quot;).&lt;br /&gt;
*** Set the Last Changed date and time (EPL_LAST_CHANGED_DATE and EPL_LAST_CHANGED_TIME) to the current server time, in OBS format.&lt;br /&gt;
** If the next job found is not a break, create a new break job as follows: --&amp;gt;&lt;br /&gt;
** Create a new break job as follows:&lt;br /&gt;
*** EPL_SITE_ID	- From the found Load's Site ID&lt;br /&gt;
*** EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
*** EPL_JOB_ID	- Generated&lt;br /&gt;
*** EPL_JOB_CODE	- &amp;quot;BRK_&amp;lt;EPL_LOAD_ID&amp;gt;_&amp;lt;EPL_SEQUENCE_NO&amp;gt;&amp;quot;. The tagged values should be substituted with the found Load ID, and the DIPS column value LINK SEQ NO respectively.&lt;br /&gt;
*** EPL_JOB_TYPE	- &amp;quot;D&amp;quot;&lt;br /&gt;
*** EPL_JOB_GROUP	- &amp;quot;OTHER&amp;quot;&lt;br /&gt;
*** EPL_JOB_INSTRUCTION	- &amp;quot;Driver Break&amp;quot;&lt;br /&gt;
*** EPL_START_PLANNED_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_PLANNED_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_ACTUAL_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_ACTUAL_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_ARRIVAL_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_ARRIVAL_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_END_PLANNED_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_END_PLANNED_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_DISTANCE_PLANNED	- 0&lt;br /&gt;
*** EPL_CUSTOMER_CODE	- &amp;quot;BREAK&amp;quot;&lt;br /&gt;
*** EPL_CUSTOMER_NAME	- &amp;quot;Driver Break &amp;quot; concatenated with the sequence (EPL_SEQUENCE) and the Load ID (EPL_LOAD_ID) from the found job.&lt;br /&gt;
*** EPL_ADDRESS_1	- &amp;quot;Driver Break &amp;quot; concatenated with the sequence (EPL_SEQUENCE) and the Load ID (EPL_LOAD_ID) from the found job.&lt;br /&gt;
*** EPL_POSTCODE	- The postcode from the found job.&lt;br /&gt;
*** EPL_SEQUENCE	- The sequence from the found job&lt;br /&gt;
*** EPL_LOADING_TYPE	- Blank&lt;br /&gt;
*** EPL_TRAVEL_PLANNED	- 0&lt;br /&gt;
*** EPL_WORK_PLANNED	- 0	&lt;br /&gt;
*** EPL_LAT	- from the tag pos, sub-tag latitude value, converted to degrees.&lt;br /&gt;
*** EPL_LONG	- from tag pos, sub-tag longitude value, converted to degrees.&lt;br /&gt;
*** EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
*** EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
*** EPL_ODO_START - from the tag odometer value, if present.&lt;br /&gt;
*** EPL_GENERATED - &amp;quot;Y&amp;quot; - Generated by the driver.&lt;br /&gt;
*** EPL_STATUS - &amp;quot;I&amp;quot; - In Progress&lt;br /&gt;
** Write a User Tracking record for the Break job created or updated to In Progress, indicating &amp;quot;WEBFLEET - Start of Break&amp;quot; - see below for details. &lt;br /&gt;
{{Note}} When the first matching vehicle with an in progress load is found, stop processing any further records.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If no EPOD_XF_CONFOG exists for the site for the WEBFLEET job update for that fleet for that vehicle, ignore the updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* If treating the message as End of Break:&lt;br /&gt;
** Find the Vehicle(s) (EPOD_VEHICLE) through the External System Reference (EPL_EXT_REF) from tag objectNo attribute value, for sites that match the fleet parameter from the extraction (EPL_XF_RECIPIENT from EPOD_XF_CONFIG).&lt;br /&gt;
** Find the load in progress on that Site (EPL_SITE_ID) and vehicle ID (EPL_VEHICLE_ID), for all matching vehicles. If one is not found, do not process this message.&lt;br /&gt;
** Find a job (EPOD_JOB) on the load that is a driver-generated break that is status In Progress (EPL_STATUS is &amp;quot;I&amp;quot;). If there is not one one, ignore this message.&lt;br /&gt;
** If there is one, update it as follows:&lt;br /&gt;
*** Set the Actual End date and time (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the break job's ODO End (EPL_ODO_END) from the tag odometer value if present.&lt;br /&gt;
*** Set the break job's status to Complete (EPL_STATUS = &amp;quot;C&amp;quot;.&lt;br /&gt;
*** Set the Last Changed date and time (EPL_LAST_CHANGED_DATE and EPL_LAST_CHANGED_TIME) to the current server time, in OBS format.&lt;br /&gt;
*** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
*** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
*** Set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value on the job (EPL_ODO_START), plus any value already in this distance travelled job field.&lt;br /&gt;
** If the break job found is a driver-generated break job, find any non-break jobs in progress (EPL_STATUS = &amp;quot;I&amp;quot;) on the load. If found, set the distance (EPL_DISTANCE_ACTUAL) and travel time (EPL_DRIVING_TIME) on all the jobs to be the current values minus the values on the break job just updated, plus any value already in these fields. This will then remove the distance and travel that was added to the Break job from the job in progress, for the Planned vs Actual reporting later.&lt;br /&gt;
** Write a User Tracking record for the Break job created or updated to In Progress, indicating &amp;quot;WEBFLEET - End of Break&amp;quot; - see below for details. &lt;br /&gt;
** Check all the jobs on the Load. &lt;br /&gt;
*** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, if all have been completed or cancelled, set the Load status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
*** If all have been completed or cancelled and if the tag odometer value is present, set the ODO end against the load if not set (EPL_MILEAGE_END) from this incoming value. Set the Actual Distance travelled against the load (EPL_LOAD_DISTANCE_ACTUAL) to be the ODO end (EPL_MILEAGE_END)) minus the ODO start (EPL_MILEAGE_START), if both values are non-zero.&lt;br /&gt;
{{Note}} When the first matching vehicle with an in progress load is found, stop processing any further records.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If no EPOD_XF_CONFOG exists for the site for the WEBFLEET job update for that fleet for that vehicle, ignore the updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Any messages in the result that do not match the filtered messages above can be ignored - no audit is required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} When writing order tracking records to EPOD_USER_AUDIT, all of the normal details should be entered. This should be sourced from the Job record being updated unless specified otherwise:&lt;br /&gt;
* Site ID&lt;br /&gt;
* User ID - From the Load&lt;br /&gt;
* Vehicle ID - From the Load&lt;br /&gt;
* Load ID - From the Load&lt;br /&gt;
* Job ID&lt;br /&gt;
* Message Type - dependent on the tag orderState of the result being processed:&lt;br /&gt;
** 221 or 241 - &amp;quot;WEBFLEET - Order Started&amp;quot;&lt;br /&gt;
** 222 or 242- &amp;quot;WEBFLEET - Order Arrived&amp;quot;&lt;br /&gt;
** 301 - &amp;quot;WEBFLEET - Order Cancelled&amp;quot;&lt;br /&gt;
** 302 - &amp;quot;WEBFLEET - Order Rejected&amp;quot;&lt;br /&gt;
** 401 - &amp;quot;WEBFLEET - Order Complete&amp;quot;&lt;br /&gt;
** If this is Blank and the process is treating this as a Start of Break - &amp;quot;WEBFLEET - Start of Break&amp;quot;&lt;br /&gt;
** If this is Blank and the process is treating this as an End of Break - &amp;quot;WEBFLEET - End of Break&amp;quot;&lt;br /&gt;
* GPS Coordinates - from the converted values of the input tag pos, sub-tags latitude and longitude values, concatenated with a comma.&lt;br /&gt;
* Audit Date - The server date as of the time the record is processed.&lt;br /&gt;
* Audit Time - The server time as of the time the record is processed.&lt;br /&gt;
* Job Type&lt;br /&gt;
* Device Date - extracted date from the tag posTime value, translated into OBS format.&lt;br /&gt;
* Device Time - extracted time from the tag posTime value, translated into OBS format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Once messages taken from the queue in this message response are successfully processed, the process must use the webservice method ackQueueMessagesExtern to acknowledge completion of the message transfer to the application. Otherwise, the messages will be kept and returned again during the next call to popQueueMessagesExtern.&lt;br /&gt;
&lt;br /&gt;
{{Note}} In order to prevent this system from being flooded with over-sized responses, the number of messages that will be returned on a single response is limited to 500. This limit can be adjusted per account on request.&lt;br /&gt;
&lt;br /&gt;
The structure of the ackQueueMessagesExtern method is identical to the above Pop message, except for the name, as follows: &lt;br /&gt;
      &amp;lt;ser:ackQueueMessagesExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:ackQueueMessagesExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Again, the response to this message will be the same as the other WEBFLEET messages, except that the outer tag is ackQueueMessagesExternResponse. Regardless of status, the &lt;br /&gt;
      &lt;br /&gt;
Should the value of the tag resultSize be 500, this whole process of retrieving, processing and acknowledging messages should be repeated. This should continue until the result size is less than 500 (i.e. there are no more messages on the queue).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Should there be a problem processing the messages from the queue, an audit record of the row detail and the error code should be created in EPOD_XF_AUDIT_HEADER. Failing a single message does not result in the message failing - these should always be acknowledged. Failures encountered server-side (failures within {{#var:System}} should result in not acknowledging the message, so that they may be reprocessed later by re-reading them from the queue.&lt;br /&gt;
&lt;br /&gt;
When writing Audit records for failures and successes, the records should be populated as follows. If not specified, the values should be derived from the job:&lt;br /&gt;
* Site.&lt;br /&gt;
* Job Group, if this is an audit related to a job.&lt;br /&gt;
* Header ID - Generated.&lt;br /&gt;
* Request Data - If Failure, the resultItem tag and contents.&lt;br /&gt;
* Request Date - The server date as of the time the record is processed.&lt;br /&gt;
* Request Time - The server time as of the time the record is processed.&lt;br /&gt;
* Status - &amp;quot;S&amp;quot; for Success, &amp;quot;F&amp;quot; for Fail, as indicated above when writing the audit record.&lt;br /&gt;
* Status Description - If Success, &amp;quot;Jobs Updated&amp;quot;, else the reason for the failure (e.g. &amp;quot;Load already completed&amp;quot;, &amp;quot;Job already cancelled&amp;quot;, etc) as indicated above.&lt;br /&gt;
* Key Value 1 - The Job Code, if this is an audit related to a job.&lt;br /&gt;
* Key Value 2 - The Job ID, if this is an audit related to a job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing all aspects of the WEBFLEET - {{#var:System}} Update Interface.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=Create 2 loads with jobs configured as per the example Load in the supplied CSV extraction from DiPS.&lt;br /&gt;
|Objective=To test that: jobs are updated with all actual information; Loads are updated correctly; jobs done out of sequence are updated taking into account any intermediate distance and time; driver-generated breaks are created correctly; jobs completed with breaks whilst in progress are updated taking into account any intermediate distance and time.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 1 - Normal Processing.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Accept and Start Loading job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Arrive Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Arrival Date/Time and End ODO updated, Travel Time and Distance updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job Complete, Actual End Date/Time updated, Work Time updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Accept, Start and Complete Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Reject Delivery Job 2.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel Delivery Job 3.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Break 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Consolidated Delivery 1.&lt;br /&gt;
|Result=All Jobs updated in C-ePOD as before in stages - final result: Jobs Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel Consolidated Delivery 2.&lt;br /&gt;
|Result=All Jobs updated in C-ePOD as before in stages - final result: Jobs Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Break 2 before the next job (out of sequence).&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Delivery Job 4.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Unloading.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Load updated to Complete, End ODO updated. Next Load automatically set to In Progress (not part of this test).&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}  {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 2 - Out of sequence.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start and Drive to Delivery Job 1. Do not Arrive at Job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job In Progress, Actual Start Date/Time, Job Start ODO updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start, Arrive and Complete Delivery Job 2 before completing Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Distance Travel times take into account the distance and time travelled on the job 2 in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 3 - Driver-generated Breaks.&lt;br /&gt;
|Notes=Continuing from Cycle 2.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Pause Work.&lt;br /&gt;
|Result=Creates new break job as specified.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start Work.&lt;br /&gt;
|Result=Updates new break job - Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel preadvised break job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start Consolidated jobs 1.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Pause and Start Work.&lt;br /&gt;
|Result=Creates and updates new break job in stages as before: Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. Updates In-progress Consolidated Jobs 1 wrt Time and Distance taken away for the time and distance taken on the Break.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Continue Consolidated jobs. Pause and Start Work again.&lt;br /&gt;
|Result=Creates and updates new break job in stages as before: Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. Updates In-progress Consolidated Jobs 1 wrt Time and Distance taken away for the time and distance taken on the next Break added to the previous break.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Consolidated Jobs 1.&lt;br /&gt;
|Result=Jobs updated in C-ePOD as before in stages - final result: Jobs Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs. Distance, Work and Travel times take into account the distance, work and time travelled on the 2 break jobs in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete consolidated jobs 2.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start the next job. Pause and Start work, complete job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Distance, Work and Travel times take into account the distance, work and time travelled on the break job in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel preadvised Break.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Unloading.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Load updated to Complete, End ODO updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|Ref2=EPOD Import Mapping&lt;br /&gt;
|RefV2=5.1.2&lt;br /&gt;
|RefDate2=17/06/2016&lt;br /&gt;
|Ref3=EPOD Export Mapping&lt;br /&gt;
|RefV3=5.1.2&lt;br /&gt;
|RefDate3=17/06/2016&lt;br /&gt;
|Ref4=WEBFLEET.connect Reference&lt;br /&gt;
|RefV4=1.28.0&lt;br /&gt;
|RefDate4=31/03/2016&lt;br /&gt;
|Ref4=obs-eas-DIPS2AXS for PvA.xls&lt;br /&gt;
|RefV4=N/A&lt;br /&gt;
|RefDate4=24/06/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=1.75&lt;br /&gt;
|TS=1.75&lt;br /&gt;
|DEV=7.25&lt;br /&gt;
|ST=1.50&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.50&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336015_SCR-332569-6_GK_PvA_WEBFLEET-ePOD_Interface&amp;diff=3511</id>
		<title>FS 336015 SCR-332569-6 GK PvA WEBFLEET-ePOD Interface</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336015_SCR-332569-6_GK_PvA_WEBFLEET-ePOD_Interface&amp;diff=3511"/>
		<updated>2016-08-23T12:13:17Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|WEBFLEET-ePOD Job Update Interface}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336015 - SCR-332569-6, SCR-332569-7, SCR332569-8}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into {{#var:System}} and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
{{SCR|Reference=332569|SCRNo=6&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into {{#var:System}} - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference=332569|SCRNo=7&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=REQ_314432_Greene_King_ePOD_Requirements#Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference=332569|SCRNo=8&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=REQ_314432_Greene_King_ePOD_Requirements#Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing {{#var:System}} User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_336015_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
This document covers 3 changes from the solution design:&lt;br /&gt;
* 336015 SCR-332569-6 WEBFLEET-ePOD Job Update Interface&lt;br /&gt;
* 336016 SCR-332569-8 Display location of TomTom Order Arrival&lt;br /&gt;
* 336017 SCR-332569-7 Update non-working time as a new break&lt;br /&gt;
The estimates in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]] are the combined values from these 3 changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface will be written to capture the events related to Orders and start/stop working time only - Geofence breaks will not be captured or created as part of this interface and will NOT debrief the loads and jobs in {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface identifies the Site for WEBFLEET updates by extracting it from the Order Number sent to WEBFLEET. This requires a fixed Job ID length of 10 characters, which is the default when sending orders to WEBFLEET. If the interface is used as described in the solution design, this interface will function automatically with no issues and no manual intervention. If any other mechanism is used to generate the orders in WEBFLEET, or the Job IDs are created at a different length, this update process will not work as described.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface identifies driver-generated Breaks through the external (WEBFLEET) vehicle ID in order to find the load that is in progress. Where the same vehicle is in use on multiple sites, this can compromise the interface for generation of breaks.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This document assumes that that the process will be used under conditions where only WEBFLEET is in use, '''not''' the full {{#var:System}} solution. Under the full {{#var:System}} solution, driver-generated breaks on the device will not be processed through this TomTom WEBFLEET interface. The system will then restrict the messages read from WEBFLEET to Order-only messages, rather than all messages. Care must be taken if implementing the full {{#var:System}} solution, that the old message queue is deleted after all messages are processed, and that the new message queue for orders is implemented ''before'' work starts under the new system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Drivers Pausing and Starting work will generate new breaks and update in progress jobs. Breaks will not be generated if the driver is already in-progress on a pre-existing break job. Pre-existing break jobs (for example, generated by DiPS) will not be updated or confirmed when the driver pauses or starts work on the WEBFLEET device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} When jobs are consolidated and will be actioned together on the device ((i.e. the linked ID is set to be the same value on multiple jobs), the actual values for work, travel and distance will still be updated on the job. This must be taken into account when producing the Planned Vs Actuals report, so that the values are reported on only one of the consolidated jobs on the load. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
The Sites must be pre-configured by the OBSL implementation team to point to the correct WEBFLEET fleet. This is a requirement of the Breaks solution. This is not configurable by the users. If this is not configured, driver-generated breaks from WEBFLEET will not be processed and added.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
N/A.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
For full functionality to be enabled, the {{#var:System}} system must be configured for PvA only, through the Site maintenance screen (on the ''Administration'' menu), ''Details'' tab, System Type setting.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_336015_Admin_Site.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Site Screen, showing prototyped System Type''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET-specific reason codes should be created for the Sites in advance:&lt;br /&gt;
* &amp;quot;TWCD&amp;quot; - description &amp;quot;TomTom WEBFLEET - Cancelled by Driver&amp;quot;.&lt;br /&gt;
* &amp;quot;TWRD&amp;quot; - description &amp;quot;TomTom WEBFLEET - Rejected by Driver&amp;quot;.&lt;br /&gt;
These reason codes should be created at Job and Detail level.&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_Codes.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Codes Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Set up the sites for WEBFLEET inbound interface.&lt;br /&gt;
&lt;br /&gt;
New EPOD_XF_CONFIG configurations will be required:&lt;br /&gt;
* EPL_XF_CONFIG_ID - A new configuration name to be applied to sites that do not have an Export Configuration yet, or the Export Configuration ID of the existing configuration.&lt;br /&gt;
* EPL_XF_ID - &amp;quot;TO&amp;quot; - TomTom Update&lt;br /&gt;
* EPL_SOAP_ACTION - &amp;quot;&amp;quot;&lt;br /&gt;
* EPL_SOAP_NS - &amp;quot;ser&amp;quot;&lt;br /&gt;
* EPL_SOAP_NS_PREFIX - &amp;lt;nowiki&amp;gt;&amp;quot;http://connect.webfleet.tomtomwork.com/services&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* EPL_WEB_USER - &amp;quot;admin&amp;quot;&lt;br /&gt;
* EPL_WEB_PASSWORD - &amp;quot;Matt3221&amp;quot;&lt;br /&gt;
* EPL_XF_RECIPIENT - Account - &amp;quot;logistics-obs&amp;quot;&lt;br /&gt;
* EPL_XF_DESTINATION - &amp;lt;nowiki&amp;gt;&amp;quot;https://soap.business.tomtom.com/v1.28/messagesService&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* EPL_XF_MSG_TYPE - API Key - &amp;quot;000fcb2a-6631-477a-b00e-de0505e7c7e3&amp;quot;&lt;br /&gt;
* EPL_XF_DIRECTION - &amp;quot;I&amp;quot;&lt;br /&gt;
* EPL_XF_TYPE - &amp;quot;SOAP&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_AutoExport.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Import/Export Config Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configuration must be added to all of the sites that requires TomTom interfaces for that WEBFLEET fleet. If a site already has a configuration attached to it, a configuration should be added to the same configuration name. {{Note}} This configuration of the interface will bring back all updates from the fleet, regardless of site. However, the interface configuration is required against all sites, so that the parameters may be used to identify to which site the vehicle belongs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles must be set up for WEBFLEET, with an external reference matching the object ID in WEBFLEET:&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_Vehicles.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Vehicles Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_WEBFLEET_Vehicles.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''WEBFLEET Vehicles Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== Database/DAL ==&lt;br /&gt;
New fields will be added to the EPOD_JOB table:&lt;br /&gt;
* EPL_WORK_ACTUAL - number - to hold the value of the Actual Work Time from WEBFLEET in whole numbers of minutes.&lt;br /&gt;
* EPL_ODO_START - float - to hold the Start Odometer reading from WEBFLEET.&lt;br /&gt;
* EPL_ODO_END - float - to hold the End Odometer reading from WEBFLEET.&lt;br /&gt;
All database packages and the DAL object will be changed to update and retrieve these new fields. &lt;br /&gt;
{{Note}} It is not necessary to add these fields as search-able items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following existing fields will be used to store Actual times and distances in addition to the new field above:&lt;br /&gt;
* EPL_DISTANCE_ACTUAL - Actual distance travelled. {{Note}} This must be changed to a float type (i.e. capable of storing decimal values).&lt;br /&gt;
* EPL_DRIVING_TIME - Actual driving time in whole numbers of minutes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The existing EPOD_LOAD fields EPL_LOAD_DISTANCE_PLANNED and EPL_LOAD_DISTANCE_ACTUAL should be changed to be a float type (i.e. capable of storing decimal values).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} As standard, these fields will be added to the standard XML Webservice Import and Export flows. These changes (and all others for the project) have been documented and referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]]. The standard XSD files describing the XML in detail will also be updated as part of this project. Note specifically that all fields changed to float type will need to have the type changed to &amp;quot;xsd:float&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A new field will be added to the EPOD_SITE table:&lt;br /&gt;
* EPL_EXT_FLEET - nvarchar(40) - to hold the value of the WEBFLEET fleet ID.&lt;br /&gt;
All database packages and the DAL object will be changed to update and retrieve this new field. &lt;br /&gt;
{{Note}} It is not necessary to add this field as search-able items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Indexes are required for the following tables, to improve efficiency of finding applicable vehicles to create breaks:&lt;br /&gt;
* EPOD_VEHICLE - Index EPV_EXT_IDX as EPL_EXT_REF, EPL_SITE_ID, EPL_VEHICLE_ID.&lt;br /&gt;
* EPOD_SITE - Index EPS_EXT_IDX as EPL_EXT_FLEET, EPL_SITE_ID.&lt;br /&gt;
* EPOD_LOAD - Index EPL_VEHICLE_STATUS_IDX as EPL_SITE_ID, EPL_VEHICLE_ID, EPL_STATUS, EPL_LOAD_ID&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Auto Import Process  ==&lt;br /&gt;
Retrieving messages from WEBFLEET is through the use of message queues, created and accessed through the TomTom WEBFLEET API, referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
A request to the created message queue will be made through the webservice method popQueueMessagesExtern.&lt;br /&gt;
&lt;br /&gt;
Before using popQueueMessagesExtern to retrieve outstanding messages, a queue must be created using the createQueueExtern method, using the same message class&lt;br /&gt;
parameter that is being provided with calls to popQueueMessagesExtern. In this case, the message class is 2 (all messages except tracking messages).&lt;br /&gt;
&lt;br /&gt;
{{Note}} The resulting data set is delivered in the language chosen in the WEBFLEET account and not on the language indicated in the lang parameter.&lt;br /&gt;
&lt;br /&gt;
The structure of the popQueueMessagesExtern method is as follows:&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ser:popQueueMessagesExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:popQueueMessagesExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This document assumes that that the process will be used under conditions where only WEBFLEET is in use, '''not''' the full {{#var:System}} solution. In this case, the message queue created and used for WEBFLEET messages will require to be filtered for all messages except tracking messages (filter attribute &amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot;). This attribute is used on all WEBFLEET webservice calls to create, pop and acknowledge messages from that queue. This is only the case when the Site's System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;. This is only required when creating breaks through WEBFLEET. When the full {{#var:System}} system is in use, this will not be the case, and therefore the WEBFLEET messages can be more strictly filtered to only Order-based messages (filter attribute &amp;quot;ORDER_RELATED&amp;quot;). The mcgClass filter attribute on ''all'' WEBFLEET message queue methods in this document should be set to &amp;quot;ORDER_RELATED&amp;quot; if the Site's System Type (EPL_SYSTEM_TYPE) is anything except &amp;quot;PvA&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Care must be taken if implementing the full {{#var:System}} solution, that the old message queue is deleted after all messages are processed, and that the new message queue for orders is implemented ''before'' work starts under the new system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The response to a popQueueMessagesExtern message is as follows:&lt;br /&gt;
      &amp;lt;ns3:popQueueMessagesExternResponse &lt;br /&gt;
            xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; &lt;br /&gt;
            xmlns:ns3=&amp;quot;http://connect.webfleet.tomtomwork.com/services&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;return&amp;gt;&lt;br /&gt;
            &amp;lt;statusCode&amp;gt;9195&amp;lt;/statusCode&amp;gt;&lt;br /&gt;
            &amp;lt;statusMessage&amp;gt;...Details of the status...&amp;lt;/statusMessage&amp;gt;&lt;br /&gt;
            &amp;lt;errors&amp;gt;&lt;br /&gt;
               &amp;lt;errorInfo objectName=&amp;quot;QueueServiceParameter&amp;quot; fieldName=&amp;quot;filter&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msg&amp;gt;A value is required&amp;lt;/msg&amp;gt;&lt;br /&gt;
               &amp;lt;/errorInfo&amp;gt;&lt;br /&gt;
            &amp;lt;/errors&amp;gt;&lt;br /&gt;
            &amp;lt;resultSize&amp;gt;0&amp;lt;/resultSize&amp;gt;&lt;br /&gt;
            &amp;lt;results xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/return&amp;gt;&lt;br /&gt;
      &amp;lt;/ns3:popQueueMessagesExternResponse&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The above response object also shows the result should an error occur. TomTom Responses have been handled before when processing sending orders to WEBFLEET in the Auto Export process (in method EPOD_SYS_EXPORT.TomTomOrdersProcessData). A similar process should be implemented here:&lt;br /&gt;
* If the status code returned is 0, the message was successful.&lt;br /&gt;
* If the status code returned is 8011, request limits were reached - in this case treat this as a failure.&lt;br /&gt;
* If the status code returned is 9303, the message queue request failed - see the following section.&lt;br /&gt;
* Any other status code returned should be treated as a failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the message queue request failed, it may not be set up yet. This is indicated by the errorInfo/msg tag starting with &amp;quot;WFCQ_E0022&amp;quot;. If any other error message is received, write an XF Audit record, indicating &amp;quot;Unable to read from queue&amp;quot; plus the description from the msg tag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the queue has not been set up yet, the process should create it at this time. This is through a call to the createQueueExtern webservice method, populated as follows:&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ser:createQueueExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:createQueueExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To call this, simply replace the outer tags of the previous request and resend the SOAP request.&lt;br /&gt;
&lt;br /&gt;
The response object for this call is identical to the response to all other calls, except that the outer tag is createQueueExternResponse. Anything other than &amp;quot;0&amp;quot; (Success) in the status code means a failure to create the queue. In the case of failure, write an XF Audit record, indicating &amp;quot;Creation of queue failed&amp;quot; plus the description from the msg tag.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If the queue is created here, there is no need to continue with the process, as there will be no messages in the queue yet - the process can finish here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The results tag will contain the results in sub-tags called resultItem. Example files exist for this data returned. The following are example result items for each item that the process will be dealing with:&lt;br /&gt;
&lt;br /&gt;
'''Starting an Order:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949248423&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:05:06.008Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349133&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852108&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:05:04Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;241&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''In progress to an Order:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949319260&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:06:19.388Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000761&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: est. arrival 16:24, 11 mi to destination&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852109&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:06:16Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;241&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;eta&amp;gt;2016-06-20T15:24:56Z&amp;lt;/eta&amp;gt;&lt;br /&gt;
                  &amp;lt;distance&amp;gt;17249&amp;lt;/distance&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''On and Off a Break:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949851082&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:15:48.686Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;DATA&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;80000719&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;John Doe: Pause started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverNo driverNo=&amp;quot;44&amp;quot; driverUid=&amp;quot;1-44036-4637202118&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pndconn&amp;gt;0&amp;lt;/pndconn&amp;gt;&lt;br /&gt;
                  &amp;lt;tripMode&amp;gt;1&amp;lt;/tripMode&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852114&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:14:05Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                     &amp;lt;workstate&amp;gt;PAUSE&amp;lt;/workstate&amp;gt;&lt;br /&gt;
                     &amp;lt;sourceDevice&amp;gt;PND&amp;lt;/sourceDevice&amp;gt;&lt;br /&gt;
                     &amp;lt;eventTime&amp;gt;2016-06-20T15:14:05Z&amp;lt;/eventTime&amp;gt;&lt;br /&gt;
                  &amp;lt;/pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949851641&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:15:49.258Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;DATA&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;80000719&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;John Doe: Work started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverNo driverNo=&amp;quot;44&amp;quot; driverUid=&amp;quot;1-44036-4637202118&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;tripMode&amp;gt;2&amp;lt;/tripMode&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852114&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:14:25Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                     &amp;lt;workstate&amp;gt;WORKING&amp;lt;/workstate&amp;gt;&lt;br /&gt;
                     &amp;lt;sourceDevice&amp;gt;PND&amp;lt;/sourceDevice&amp;gt;&lt;br /&gt;
                     &amp;lt;eventTime&amp;gt;2016-06-20T15:14:25Z&amp;lt;/eventTime&amp;gt;&lt;br /&gt;
                  &amp;lt;/pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Cancellation:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54950259474&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:23:18.805Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;111100734&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: cancelled &amp;quot;unexpected cow&amp;quot;&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852117&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:23:16Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;301&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;userText&amp;gt;unexpected cow&amp;lt;/userText&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Rejection:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54950499987&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:27:50.947Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;111100731&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000002: rejected &amp;quot;rejected by duck&amp;quot;&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349067&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852166&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:27:48Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;282&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;7&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000002&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;302&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;userText&amp;gt;rejected by duck&amp;lt;/userText&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Arrived at Delivery Location:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54856914199&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-17T14:06:20.409Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order 405511: arrived at delivery location&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349010&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2851930&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-17T14:06:19Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;2&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;405511&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;242&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Order Finished:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54856918353&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-17T14:06:24.714Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order 405511: finished&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349020&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2851940&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-17T14:06:23Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;405511&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;401&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All result items should be processed in sequence, by looping through them.&lt;br /&gt;
&lt;br /&gt;
The tags in this resultItem that are required are as follows:&lt;br /&gt;
* msgClass - for filtering messages.&lt;br /&gt;
* msgType - for filtering messages.&lt;br /&gt;
* objectNo - the vehicle's external (TomTom WEBFLEET) reference.&lt;br /&gt;
* odometer - the Odometer reading in KM. This may not be present, depending on hardware and configuration.&lt;br /&gt;
* pos/latitude - the latitude taken at the point of the message being generated, in micro degrees. This may not be present if there is not an adequate GPS signal at the time the message was created.&lt;br /&gt;
* pos/longitude - the longitude taken at the point of the message being generated, in micro degrees.  This may not be present if there is not an adequate GPS signal at the time the message was created.&lt;br /&gt;
* posTime - the date and time the message was created. ISO 8601-formatted date and time in the UTC timezone, combined representation in the extended format. Example: 2007-12-24T16:00:00Z.&lt;br /&gt;
* orderNo@orderNo - the unique order number passed to WEBFLEET when the order was created. For {{#var:System}} this will the value from External System ID, usually  the Site ID and Job ID combined. This differs for consolidated jobs and should be confirmed as to the actual value. &lt;br /&gt;
* orderState - for filtering messages.&lt;br /&gt;
* eta - the estimated time of arrival at the location for the order. ISO 8601-formatted date and time in the UTC timezone, combined representation in the extended format. Example: 2007-12-24T16:00:00Z.&lt;br /&gt;
* pndWorkingStateMessageData/workstate - determines break status.&lt;br /&gt;
* userText - the text entered when cancelling or rejecting an order on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}}&lt;br /&gt;
* A slash (/) in the tag name (e.g. pndWorkingStateMessageData/workstate) indicates that this is a sub-tag of another tag.&lt;br /&gt;
* An At symbol (@) in the tag name (orderNo@orderNo) indicates that this is an attribute of the named tag.&lt;br /&gt;
* Tags (and sub-tags) may not exist for each message, so each tag must be extracted and checked individually, or the errors handled when extracting values from tags.&lt;br /&gt;
* Longitudes and Latitudes are stored in micro-degrees and must be divided by 1,000,000 for storing in {{#var:System}}.&lt;br /&gt;
* Times are in xsd:dateTime format and must be converted. Furthermore, they are in UTC, and must be converted to the local server timezone when storing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''General Processing'''&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for the result msgClass tag values &amp;quot;DATA&amp;quot; and &amp;quot;ORDER&amp;quot; only.&lt;br /&gt;
* Convert the date/time from the posTime tag in the result.&lt;br /&gt;
* Convert the ETA date/time from the eta tag in the result, if present.&lt;br /&gt;
* Convert and validate the ODO reading from the odometer tag in the result, if present.&lt;br /&gt;
* Convert and validate the GPS location from the pos tag, sub-tags latitude and longitude in the result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Processing of result records with an order state value:'''&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for the result msgClass tag value &amp;quot;ORDER&amp;quot; and for the following orderState tag values:&lt;br /&gt;
** 221 - Pickup order started&lt;br /&gt;
** 222 - Arrived at Pickup location&lt;br /&gt;
** 241 - Delivery order started&lt;br /&gt;
** 242 - Arrived at Delivery location&lt;br /&gt;
** 301 - Cancelled&lt;br /&gt;
** 302 - Rejected&lt;br /&gt;
** 401 - Finished&lt;br /&gt;
* Get the Job or Jobs (EPOD_JOB) using the extracted Site (EPL_SITE_ID) and External System Reference (EPL_EXTERNAL_SYSTEM_ID) from the orderNo tag attribute value. {{Note}} There can be multiple jobs for the External System Reference.&lt;br /&gt;
* Stop processing this result record if this job is completed or cancelled (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;). Write an Audit record for the job, status &amp;quot;F&amp;quot; - see later for details.&lt;br /&gt;
* Get the Load (EPOD_LOAD) from the Job's Load ID (EPL_LOAD_ID). Store the Load ID in a list of loads processed from this response.&lt;br /&gt;
* Stop processing this result record if this load is completed or cancelled (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;). Write an Audit record for the job, status &amp;quot;F&amp;quot; - see later for details.&lt;br /&gt;
* Get the Vehicle (EPOD_VEHICLE) from the Load's Vehicle ID (EPL_VEHICLE_ID).&lt;br /&gt;
* Set the Vehicle's last position, date and time as follows:&lt;br /&gt;
** Set the Last Position (EPL_LAST_POSITION) from the converted values of the result tags latitude and longitude values, concatenated with a comma.&lt;br /&gt;
** Set the Last Position Date and time (EPL_LAST_POSITION_DATE and EPL_LAST_POSITION_TIME) from the extracted date and time from the tag posTime value, translated into OBS format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order states 221 and 241 (order started):&lt;br /&gt;
** Set the Actual Start date and time if not already populated (EPL_START_ACTUAL_DATE and EPL_START_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, set the Job or Jobs status (EPL_STATUS) to &amp;quot;I&amp;quot; - In Progress if not already in progress.&lt;br /&gt;
** If the job was not already in progress, find any other in-progress jobs against the load and set to status pending (EPL_STATUS set to &amp;quot;P&amp;quot;). If they already have a value in start odometer (EPL_ODO_START), set the distance travelled (EPL_DISTANCE_ACTUAL) to tag odometer value minus the value in the jobs' start odometer and zero the jobs' start odometer value.&lt;br /&gt;
** Set the ETA date and time against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME) from the tag eta value, if present, translated into OBS format.&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** If present in the incoming result, set the Start Odometer reading on the Job or Jobs (EPL_ODO_START) to the tag odometer value, if not already populated.&lt;br /&gt;
** If present in the incoming result, set the ODO start against the Load (EPL_MILEAGE_START) from the tag odometer value, if not already populated.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order states 222 and 242 (arrived at location):&lt;br /&gt;
** Update Arrival date and time against the job or jobs if not already populated (EPL_ARRIVAL_DATE and EPL_ARRIVAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order state 401 (Finished):&lt;br /&gt;
** Set the Actual End date and time if not already populated (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, set the Job or Jobs status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete if not already complete.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** If present in the incoming result, set the End Odometer reading on the Job to the tag odometer value.&lt;br /&gt;
** If not yet populated, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** If the status of the job (EPL_STATUS) is not &amp;quot;I&amp;quot; (In Progress), set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, complete all child records for the job or jobs (i.e. Containers, Products, Service Items), by setting the status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order status 301 (Cancelled) or order status 302 (Rejected):&lt;br /&gt;
** Set the Actual End date and time if not already populated (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag  posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, Set Job or Jobs status (EPL_STATUS) to &amp;quot;X&amp;quot; - Cancelled.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, Set the Reason Code against the Job or Jobs (EPL_REASON_CODE) to &amp;quot;TWCD&amp;quot; (for order status 301) or &amp;quot;TWRD&amp;quot; (for order status 302).&lt;br /&gt;
** Set the User Notes (EPL_USER_NOTES) against the Job or Jobs to be the tag userText value.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the incoming odometer value.&lt;br /&gt;
** If not yet populated, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, cancel all child records for the job or jobs (i.e. Containers, Products, Service Items), by setting the status (EPL_STATUS) to &amp;quot;X&amp;quot; - Cancelled.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order status 301 (Cancelled), 302 (Rejected) and 401 (Complete):&lt;br /&gt;
** Check all the jobs on the Load. &lt;br /&gt;
*** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, if all have been completed or cancelled, set the Load status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
*** If all have been completed or cancelled and if the tag odometer value is present, set the ODO end against the load if not set (EPL_MILEAGE_END) from this incoming value. Set the Actual Distance travelled against the load (EPL_LOAD_DISTANCE_ACTUAL) to be the ODO end (EPL_MILEAGE_END)) minus the ODO start (EPL_MILEAGE_START), if both values are non-zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ignore any other messages than the ones above, if the System Type (EPL_SYSTEM_TYPE) is ''not'' &amp;quot;PvA&amp;quot; - breaks will not be processed through this TomTom WEBFLEET interface when the full {{#var:System}} system is being run.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Processing of result records without an order state value:'''&lt;br /&gt;
These messages are used predominantly to generate breaks indicated by the driver.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Drivers Pausing and Starting work will generate new breaks and update in progress jobs. Breaks will not be generated if the driver is already in-progress on a pre-existing break job. Pre-existing break jobs (for example, generated by DiPS) will not be updated or confirmed when the driver pauses or starts work on the WEBFLEET device.&lt;br /&gt;
&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for tag msgClass value &amp;quot;DATA&amp;quot; and the following message types (extracted from the last 3 digits of the value in the msgType tag):&lt;br /&gt;
** 711 - Log-off driver (including tachograph driver card removed) - treat as end of break.&lt;br /&gt;
** 712 - Begin of work, driver indicated - treat as end of break.&lt;br /&gt;
** 713 - End of work, driver indicated - treat as end of break.&lt;br /&gt;
** 714 - Begin of break, driver indicated - treat as start of break.&lt;br /&gt;
** 715 - End of break, driver indicated - treat as end of break.&lt;br /&gt;
** 716 - Work status change, indicating driver role, old and new work status (applies to all PRO 71xx, 91xx devices when used with identified driver and Remote LINK Working Time). If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;PAUSE&amp;quot;, treat as start of break. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;WORKING&amp;quot;, treat as end of break.&lt;br /&gt;
** 717 - Work started (driver role and driver name indicated) - treat as end of break.&lt;br /&gt;
** 718 - Work ended (driver role and driver name indicated) - treat as end of break.&lt;br /&gt;
** 719 - Work time event, indicating driver. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;PAUSE&amp;quot;, treat as start of break. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;WORKING&amp;quot;, treat as end of break.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* If treating the message as Start of Break:&lt;br /&gt;
** Find the Vehicle(s) (EPOD_VEHICLE) through the External System Reference (EPL_EXT_REF) from tag objectNo attribute value, for sites that match the fleet parameter from the extraction (EPL_XF_RECIPIENT from EPOD_XF_CONFIG).&lt;br /&gt;
** Find the load in progress on that Site (EPL_SITE_ID) and vehicle ID (EPL_VEHICLE_ID), for all matching vehicles. If one is not found, do not process this message.&lt;br /&gt;
** Find a job (EPOD_JOB) on the load that is a break (either generated by the system or generated by DiPS) that is status In Progress (EPL_STATUS is &amp;quot;I&amp;quot;). If there is one, ignore this message, as a break is already started.&lt;br /&gt;
** Find the first job on that load that is not complete i.e. the status (EPL_STATUS) is &amp;quot;P&amp;quot; - Pending - or &amp;quot;I&amp;quot; - In Progress, ordering by the status In Progress (i.e. those jobs should be the first jobs found).&lt;br /&gt;
&amp;lt;!--** If this next job found is a break, update it as follows:&lt;br /&gt;
*** If the break job is not in progress (EPL_STATUS is not &amp;quot;I&amp;quot;), set the Actual Start date and time (EPL_START_ACTUAL_DATE and EPL_START_ACTUAL_TIME from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the Arrival date and time (EPL_ARRIVAL_DATE	and EPL_ARRIVAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the break job's ODO Start (EPL_ODO_START) from the tag odometer value if present, if the break job is not in progress (EPL_STATUS is not &amp;quot;I&amp;quot;).&lt;br /&gt;
*** Set the break job's status to In Progress (EPL_STATUS = &amp;quot;I&amp;quot;).&lt;br /&gt;
*** Set the Last Changed date and time (EPL_LAST_CHANGED_DATE and EPL_LAST_CHANGED_TIME) to the current server time, in OBS format.&lt;br /&gt;
** If the next job found is not a break, create a new break job as follows: --&amp;gt;&lt;br /&gt;
** Create a new break job as follows:&lt;br /&gt;
*** EPL_SITE_ID	- From the found Load's Site ID&lt;br /&gt;
*** EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
*** EPL_JOB_ID	- Generated&lt;br /&gt;
*** EPL_JOB_CODE	- &amp;quot;BRK_&amp;lt;EPL_LOAD_ID&amp;gt;_&amp;lt;EPL_SEQUENCE_NO&amp;gt;&amp;quot;. The tagged values should be substituted with the found Load ID, and the DIPS column value LINK SEQ NO respectively.&lt;br /&gt;
*** EPL_JOB_TYPE	- &amp;quot;D&amp;quot;&lt;br /&gt;
*** EPL_JOB_GROUP	- &amp;quot;OTHER&amp;quot;&lt;br /&gt;
*** EPL_JOB_INSTRUCTION	- &amp;quot;Driver Break&amp;quot;&lt;br /&gt;
*** EPL_START_PLANNED_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_PLANNED_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_ACTUAL_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_ACTUAL_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_ARRIVAL_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_ARRIVAL_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_END_PLANNED_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_END_PLANNED_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_DISTANCE_PLANNED	- 0&lt;br /&gt;
*** EPL_CUSTOMER_CODE	- &amp;quot;BREAK&amp;quot;&lt;br /&gt;
*** EPL_CUSTOMER_NAME	- &amp;quot;Driver Break &amp;quot; concatenated with the sequence (EPL_SEQUENCE) and the Load ID (EPL_LOAD_ID) from the found job.&lt;br /&gt;
*** EPL_ADDRESS_1	- &amp;quot;Driver Break &amp;quot; concatenated with the sequence (EPL_SEQUENCE) and the Load ID (EPL_LOAD_ID) from the found job.&lt;br /&gt;
*** EPL_POSTCODE	- The postcode from the found job.&lt;br /&gt;
*** EPL_SEQUENCE	- The sequence from the found job&lt;br /&gt;
*** EPL_LOADING_TYPE	- Blank&lt;br /&gt;
*** EPL_TRAVEL_PLANNED	- 0&lt;br /&gt;
*** EPL_WORK_PLANNED	- 0	&lt;br /&gt;
*** EPL_LAT	- from the tag pos, sub-tag latitude value, converted to degrees.&lt;br /&gt;
*** EPL_LONG	- from tag pos, sub-tag longitude value, converted to degrees.&lt;br /&gt;
*** EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
*** EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
*** EPL_ODO_START - from the tag odometer value, if present.&lt;br /&gt;
*** EPL_GENERATED - &amp;quot;Y&amp;quot; - Generated by the driver.&lt;br /&gt;
*** EPL_STATUS - &amp;quot;I&amp;quot; - In Progress&lt;br /&gt;
** Write a User Tracking record for the Break job created or updated to In Progress, indicating &amp;quot;WEBFLEET - Start of Break&amp;quot; - see below for details. &lt;br /&gt;
{{Note}} When the first matching vehicle with an in progress load is found, stop processing any further records.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If no EPOD_XF_CONFOG exists for the site for the WEBFLEET job update for that fleet for that vehicle, ignore the updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* If treating the message as End of Break:&lt;br /&gt;
** Find the Vehicle(s) (EPOD_VEHICLE) through the External System Reference (EPL_EXT_REF) from tag objectNo attribute value, for sites that match the fleet parameter from the extraction (EPL_XF_RECIPIENT from EPOD_XF_CONFIG).&lt;br /&gt;
** Find the load in progress on that Site (EPL_SITE_ID) and vehicle ID (EPL_VEHICLE_ID), for all matching vehicles. If one is not found, do not process this message.&lt;br /&gt;
** Find a job (EPOD_JOB) on the load that is a driver-generated break that is status In Progress (EPL_STATUS is &amp;quot;I&amp;quot;). If there is not one one, ignore this message.&lt;br /&gt;
** If there is one, update it as follows:&lt;br /&gt;
*** Set the Actual End date and time (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the break job's ODO End (EPL_ODO_END) from the tag odometer value if present.&lt;br /&gt;
*** Set the break job's status to Complete (EPL_STATUS = &amp;quot;C&amp;quot;.&lt;br /&gt;
*** Set the Last Changed date and time (EPL_LAST_CHANGED_DATE and EPL_LAST_CHANGED_TIME) to the current server time, in OBS format.&lt;br /&gt;
*** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
*** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
*** Set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value on the job (EPL_ODO_START), plus any value already in this distance travelled job field.&lt;br /&gt;
** If the break job found is a driver-generated break job, find any non-break jobs in progress (EPL_STATUS = &amp;quot;I&amp;quot;) on the load. If found, set the distance (EPL_DISTANCE_ACTUAL) and travel time (EPL_DRIVING_TIME) on all the jobs to be the current values minus the values on the break job just updated, plus any value already in these fields. This will then remove the distance and travel that was added to the Break job from the job in progress, for the Planned vs Actual reporting later.&lt;br /&gt;
** Write a User Tracking record for the Break job created or updated to In Progress, indicating &amp;quot;WEBFLEET - End of Break&amp;quot; - see below for details. &lt;br /&gt;
** Check all the jobs on the Load. &lt;br /&gt;
*** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, if all have been completed or cancelled, set the Load status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
*** If all have been completed or cancelled and if the tag odometer value is present, set the ODO end against the load if not set (EPL_MILEAGE_END) from this incoming value. Set the Actual Distance travelled against the load (EPL_LOAD_DISTANCE_ACTUAL) to be the ODO end (EPL_MILEAGE_END)) minus the ODO start (EPL_MILEAGE_START), if both values are non-zero.&lt;br /&gt;
{{Note}} When the first matching vehicle with an in progress load is found, stop processing any further records.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If no EPOD_XF_CONFOG exists for the site for the WEBFLEET job update for that fleet for that vehicle, ignore the updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Any messages in the result that do not match the filtered messages above can be ignored - no audit is required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} When writing order tracking records to EPOD_USER_AUDIT, all of the normal details should be entered. This should be sourced from the Job record being updated unless specified otherwise:&lt;br /&gt;
* Site ID&lt;br /&gt;
* User ID - From the Load&lt;br /&gt;
* Vehicle ID - From the Load&lt;br /&gt;
* Load ID - From the Load&lt;br /&gt;
* Job ID&lt;br /&gt;
* Message Type - dependent on the tag orderState of the result being processed:&lt;br /&gt;
** 221 or 241 - &amp;quot;WEBFLEET - Order Started&amp;quot;&lt;br /&gt;
** 222 or 242- &amp;quot;WEBFLEET - Order Arrived&amp;quot;&lt;br /&gt;
** 301 - &amp;quot;WEBFLEET - Order Cancelled&amp;quot;&lt;br /&gt;
** 302 - &amp;quot;WEBFLEET - Order Rejected&amp;quot;&lt;br /&gt;
** 401 - &amp;quot;WEBFLEET - Order Complete&amp;quot;&lt;br /&gt;
** If this is Blank and the process is treating this as a Start of Break - &amp;quot;WEBFLEET - Start of Break&amp;quot;&lt;br /&gt;
** If this is Blank and the process is treating this as an End of Break - &amp;quot;WEBFLEET - End of Break&amp;quot;&lt;br /&gt;
* GPS Coordinates - from the converted values of the input tag pos, sub-tags latitude and longitude values, concatenated with a comma.&lt;br /&gt;
* Audit Date - The server date as of the time the record is processed.&lt;br /&gt;
* Audit Time - The server time as of the time the record is processed.&lt;br /&gt;
* Job Type&lt;br /&gt;
* Device Date - extracted date from the tag posTime value, translated into OBS format.&lt;br /&gt;
* Device Time - extracted time from the tag posTime value, translated into OBS format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Once messages taken from the queue in this message response are successfully processed, the process must use the webservice method ackQueueMessagesExtern to acknowledge completion of the message transfer to the application. Otherwise, the messages will be kept and returned again during the next call to popQueueMessagesExtern.&lt;br /&gt;
&lt;br /&gt;
{{Note}} In order to prevent this system from being flooded with over-sized responses, the number of messages that will be returned on a single response is limited to 500. This limit can be adjusted per account on request.&lt;br /&gt;
&lt;br /&gt;
The structure of the ackQueueMessagesExtern method is identical to the above Pop message, except for the name, as follows: &lt;br /&gt;
      &amp;lt;ser:ackQueueMessagesExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:ackQueueMessagesExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Again, the response to this message will be the same as the other WEBFLEET messages, except that the outer tag is ackQueueMessagesExternResponse. Regardless of status, the &lt;br /&gt;
      &lt;br /&gt;
Should the value of the tag resultSize be 500, this whole process of retrieving, processing and acknowledging messages should be repeated. This should continue until the result size is less than 500 (i.e. there are no more messages on the queue).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Should there be a problem processing the messages from the queue, an audit record of the row detail and the error code should be created in EPOD_XF_AUDIT_HEADER. Failing a single message does not result in the message failing - these should always be acknowledged. Failures encountered server-side (failures within {{#var:System}} should result in not acknowledging the message, so that they may be reprocessed later by re-reading them from the queue.&lt;br /&gt;
&lt;br /&gt;
When writing Audit records for failures and successes, the records should be populated as follows. If not specified, the values should be derived from the job:&lt;br /&gt;
* Site.&lt;br /&gt;
* Job Group, if this is an audit related to a job.&lt;br /&gt;
* Header ID - Generated.&lt;br /&gt;
* Request Data - If Failure, the resultItem tag and contents.&lt;br /&gt;
* Request Date - The server date as of the time the record is processed.&lt;br /&gt;
* Request Time - The server time as of the time the record is processed.&lt;br /&gt;
* Status - &amp;quot;S&amp;quot; for Success, &amp;quot;F&amp;quot; for Fail, as indicated above when writing the audit record.&lt;br /&gt;
* Status Description - If Success, &amp;quot;Jobs Updated&amp;quot;, else the reason for the failure (e.g. &amp;quot;Load already completed&amp;quot;, &amp;quot;Job already cancelled&amp;quot;, etc) as indicated above.&lt;br /&gt;
* Key Value 1 - The Job Code, if this is an audit related to a job.&lt;br /&gt;
* Key Value 2 - The Job ID, if this is an audit related to a job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing all aspects of the WEBFLEET - {{#var:System}} Update Interface.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=Create 2 loads with jobs configured as per the example Load in the supplied CSV extraction from DiPS.&lt;br /&gt;
|Objective=To test that: jobs are updated with all actual information; Loads are updated correctly; jobs done out of sequence are updated taking into account any intermediate distance and time; driver-generated breaks are created correctly; jobs completed with breaks whilst in progress are updated taking into account any intermediate distance and time.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 1 - Normal Processing.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Accept and Start Loading job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Arrive Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Arrival Date/Time and End ODO updated, Travel Time and Distance updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job Complete, Actual End Date/Time updated, Work Time updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Accept, Start and Complete Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Reject Delivery Job 2.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel Delivery Job 3.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Break 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Consolidated Delivery 1.&lt;br /&gt;
|Result=All Jobs updated in C-ePOD as before in stages - final result: Jobs Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel Consolidated Delivery 2.&lt;br /&gt;
|Result=All Jobs updated in C-ePOD as before in stages - final result: Jobs Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Break 2 before the next job (out of sequence).&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Delivery Job 4.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Unloading.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Load updated to Complete, End ODO updated. Next Load automatically set to In Progress (not part of this test).&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}  {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 2 - Out of sequence.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start and Drive to Delivery Job 1. Do not Arrive at Job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job In Progress, Actual Start Date/Time, Job Start ODO updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start, Arrive and Complete Delivery Job 2 before completing Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Distance Travel times take into account the distance and time travelled on the job 2 in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 3 - Driver-generated Breaks.&lt;br /&gt;
|Notes=Continuing from Cycle 2.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Pause Work.&lt;br /&gt;
|Result=Creates new break job as specified.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start Work.&lt;br /&gt;
|Result=Updates new break job - Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel preadvised break job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start Consolidated jobs 1.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Pause and Start Work.&lt;br /&gt;
|Result=Creates and updates new break job in stages as before: Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. Updates In-progress Consolidated Jobs 1 wrt Time and Distance taken away for the time and distance taken on the Break.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Continue Consolidated jobs. Pause and Start Work again.&lt;br /&gt;
|Result=Creates and updates new break job in stages as before: Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. Updates In-progress Consolidated Jobs 1 wrt Time and Distance taken away for the time and distance taken on the next Break added to the previous break.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Consolidated Jobs 1.&lt;br /&gt;
|Result=Jobs updated in C-ePOD as before in stages - final result: Jobs Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs. Distance, Work and Travel times take into account the distance, work and time travelled on the 2 break jobs in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete consolidated jobs 2.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start the next job. Pause and Start work, complete job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Distance, Work and Travel times take into account the distance, work and time travelled on the break job in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel preadvised Break.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Unloading.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Load updated to Complete, End ODO updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|Ref2=EPOD Import Mapping&lt;br /&gt;
|RefV2=5.1.2&lt;br /&gt;
|RefDate2=17/06/2016&lt;br /&gt;
|Ref3=EPOD Export Mapping&lt;br /&gt;
|RefV3=5.1.2&lt;br /&gt;
|RefDate3=17/06/2016&lt;br /&gt;
|Ref4=WEBFLEET.connect Reference&lt;br /&gt;
|RefV4=1.28.0&lt;br /&gt;
|RefDate4=31/03/2016&lt;br /&gt;
|Ref4=obs-eas-DIPS2AXS for PvA.xls&lt;br /&gt;
|RefV4=N/A&lt;br /&gt;
|RefDate4=24/06/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=1.75&lt;br /&gt;
|TS=1.75&lt;br /&gt;
|DEV=7.25&lt;br /&gt;
|ST=1.50&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.50&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336015_SCR-332569-6_GK_PvA_WEBFLEET-ePOD_Interface&amp;diff=3510</id>
		<title>FS 336015 SCR-332569-6 GK PvA WEBFLEET-ePOD Interface</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336015_SCR-332569-6_GK_PvA_WEBFLEET-ePOD_Interface&amp;diff=3510"/>
		<updated>2016-08-23T12:10:52Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|WEBFLEET-ePOD Job Update Interface}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336015 SCR-332569-6}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into {{#var:System}} and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
{{SCR|Reference=332569|SCRNo=6&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into {{#var:System}} - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference=332569|SCRNo=7&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=REQ_314432_Greene_King_ePOD_Requirements#Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference=332569|SCRNo=8&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=REQ_314432_Greene_King_ePOD_Requirements#Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing {{#var:System}} User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_336015_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
This document covers 3 changes from the solution design:&lt;br /&gt;
* 336015 SCR-332569-6 WEBFLEET-ePOD Job Update Interface&lt;br /&gt;
* 336016 SCR-332569-8 Display location of TomTom Order Arrival&lt;br /&gt;
* 336017 SCR-332569-7 Update non-working time as a new break&lt;br /&gt;
The estimates in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]] are the combined values from these 3 changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface will be written to capture the events related to Orders and start/stop working time only - Geofence breaks will not be captured or created as part of this interface and will NOT debrief the loads and jobs in {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface identifies the Site for WEBFLEET updates by extracting it from the Order Number sent to WEBFLEET. This requires a fixed Job ID length of 10 characters, which is the default when sending orders to WEBFLEET. If the interface is used as described in the solution design, this interface will function automatically with no issues and no manual intervention. If any other mechanism is used to generate the orders in WEBFLEET, or the Job IDs are created at a different length, this update process will not work as described.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This interface identifies driver-generated Breaks through the external (WEBFLEET) vehicle ID in order to find the load that is in progress. Where the same vehicle is in use on multiple sites, this can compromise the interface for generation of breaks.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This document assumes that that the process will be used under conditions where only WEBFLEET is in use, '''not''' the full {{#var:System}} solution. Under the full {{#var:System}} solution, driver-generated breaks on the device will not be processed through this TomTom WEBFLEET interface. The system will then restrict the messages read from WEBFLEET to Order-only messages, rather than all messages. Care must be taken if implementing the full {{#var:System}} solution, that the old message queue is deleted after all messages are processed, and that the new message queue for orders is implemented ''before'' work starts under the new system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Drivers Pausing and Starting work will generate new breaks and update in progress jobs. Breaks will not be generated if the driver is already in-progress on a pre-existing break job. Pre-existing break jobs (for example, generated by DiPS) will not be updated or confirmed when the driver pauses or starts work on the WEBFLEET device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} When jobs are consolidated and will be actioned together on the device ((i.e. the linked ID is set to be the same value on multiple jobs), the actual values for work, travel and distance will still be updated on the job. This must be taken into account when producing the Planned Vs Actuals report, so that the values are reported on only one of the consolidated jobs on the load. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
= Set-up  =&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
The Sites must be pre-configured by the OBSL implementation team to point to the correct WEBFLEET fleet. This is a requirement of the Breaks solution. This is not configurable by the users. If this is not configured, driver-generated breaks from WEBFLEET will not be processed and added.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
N/A.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
For full functionality to be enabled, the {{#var:System}} system must be configured for PvA only, through the Site maintenance screen (on the ''Administration'' menu), ''Details'' tab, System Type setting.&lt;br /&gt;
&lt;br /&gt;
[[file:FS_336015_Admin_Site.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Site Screen, showing prototyped System Type''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET-specific reason codes should be created for the Sites in advance:&lt;br /&gt;
* &amp;quot;TWCD&amp;quot; - description &amp;quot;TomTom WEBFLEET - Cancelled by Driver&amp;quot;.&lt;br /&gt;
* &amp;quot;TWRD&amp;quot; - description &amp;quot;TomTom WEBFLEET - Rejected by Driver&amp;quot;.&lt;br /&gt;
These reason codes should be created at Job and Detail level.&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_Codes.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Codes Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Set up the sites for WEBFLEET inbound interface.&lt;br /&gt;
&lt;br /&gt;
New EPOD_XF_CONFIG configurations will be required:&lt;br /&gt;
* EPL_XF_CONFIG_ID - A new configuration name to be applied to sites that do not have an Export Configuration yet, or the Export Configuration ID of the existing configuration.&lt;br /&gt;
* EPL_XF_ID - &amp;quot;TO&amp;quot; - TomTom Update&lt;br /&gt;
* EPL_SOAP_ACTION - &amp;quot;&amp;quot;&lt;br /&gt;
* EPL_SOAP_NS - &amp;quot;ser&amp;quot;&lt;br /&gt;
* EPL_SOAP_NS_PREFIX - &amp;lt;nowiki&amp;gt;&amp;quot;http://connect.webfleet.tomtomwork.com/services&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* EPL_WEB_USER - &amp;quot;admin&amp;quot;&lt;br /&gt;
* EPL_WEB_PASSWORD - &amp;quot;Matt3221&amp;quot;&lt;br /&gt;
* EPL_XF_RECIPIENT - Account - &amp;quot;logistics-obs&amp;quot;&lt;br /&gt;
* EPL_XF_DESTINATION - &amp;lt;nowiki&amp;gt;&amp;quot;https://soap.business.tomtom.com/v1.28/messagesService&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* EPL_XF_MSG_TYPE - API Key - &amp;quot;000fcb2a-6631-477a-b00e-de0505e7c7e3&amp;quot;&lt;br /&gt;
* EPL_XF_DIRECTION - &amp;quot;I&amp;quot;&lt;br /&gt;
* EPL_XF_TYPE - &amp;quot;SOAP&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_AutoExport.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Import/Export Config Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configuration must be added to all of the sites that requires TomTom interfaces for that WEBFLEET fleet. If a site already has a configuration attached to it, a configuration should be added to the same configuration name. {{Note}} This configuration of the interface will bring back all updates from the fleet, regardless of site. However, the interface configuration is required against all sites, so that the parameters may be used to identify to which site the vehicle belongs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles must be set up for WEBFLEET, with an external reference matching the object ID in WEBFLEET:&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_Admin_Vehicles.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Vehicles Maintenance Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:FS_336015_WEBFLEET_Vehicles.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''WEBFLEET Vehicles Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
== Database/DAL ==&lt;br /&gt;
New fields will be added to the EPOD_JOB table:&lt;br /&gt;
* EPL_WORK_ACTUAL - number - to hold the value of the Actual Work Time from WEBFLEET in whole numbers of minutes.&lt;br /&gt;
* EPL_ODO_START - float - to hold the Start Odometer reading from WEBFLEET.&lt;br /&gt;
* EPL_ODO_END - float - to hold the End Odometer reading from WEBFLEET.&lt;br /&gt;
All database packages and the DAL object will be changed to update and retrieve these new fields. &lt;br /&gt;
{{Note}} It is not necessary to add these fields as search-able items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following existing fields will be used to store Actual times and distances in addition to the new field above:&lt;br /&gt;
* EPL_DISTANCE_ACTUAL - Actual distance travelled. {{Note}} This must be changed to a float type (i.e. capable of storing decimal values).&lt;br /&gt;
* EPL_DRIVING_TIME - Actual driving time in whole numbers of minutes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The existing EPOD_LOAD fields EPL_LOAD_DISTANCE_PLANNED and EPL_LOAD_DISTANCE_ACTUAL should be changed to be a float type (i.e. capable of storing decimal values).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} As standard, these fields will be added to the standard XML Webservice Import and Export flows. These changes (and all others for the project) have been documented and referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]]. The standard XSD files describing the XML in detail will also be updated as part of this project. Note specifically that all fields changed to float type will need to have the type changed to &amp;quot;xsd:float&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A new field will be added to the EPOD_SITE table:&lt;br /&gt;
* EPL_EXT_FLEET - nvarchar(40) - to hold the value of the WEBFLEET fleet ID.&lt;br /&gt;
All database packages and the DAL object will be changed to update and retrieve this new field. &lt;br /&gt;
{{Note}} It is not necessary to add this field as search-able items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Indexes are required for the following tables, to improve efficiency of finding applicable vehicles to create breaks:&lt;br /&gt;
* EPOD_VEHICLE - Index EPV_EXT_IDX as EPL_EXT_REF, EPL_SITE_ID, EPL_VEHICLE_ID.&lt;br /&gt;
* EPOD_SITE - Index EPS_EXT_IDX as EPL_EXT_FLEET, EPL_SITE_ID.&lt;br /&gt;
* EPOD_LOAD - Index EPL_VEHICLE_STATUS_IDX as EPL_SITE_ID, EPL_VEHICLE_ID, EPL_STATUS, EPL_LOAD_ID&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Auto Import Process  ==&lt;br /&gt;
Retrieving messages from WEBFLEET is through the use of message queues, created and accessed through the TomTom WEBFLEET API, referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
A request to the created message queue will be made through the webservice method popQueueMessagesExtern.&lt;br /&gt;
&lt;br /&gt;
Before using popQueueMessagesExtern to retrieve outstanding messages, a queue must be created using the createQueueExtern method, using the same message class&lt;br /&gt;
parameter that is being provided with calls to popQueueMessagesExtern. In this case, the message class is 2 (all messages except tracking messages).&lt;br /&gt;
&lt;br /&gt;
{{Note}} The resulting data set is delivered in the language chosen in the WEBFLEET account and not on the language indicated in the lang parameter.&lt;br /&gt;
&lt;br /&gt;
The structure of the popQueueMessagesExtern method is as follows:&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ser:popQueueMessagesExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:popQueueMessagesExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This document assumes that that the process will be used under conditions where only WEBFLEET is in use, '''not''' the full {{#var:System}} solution. In this case, the message queue created and used for WEBFLEET messages will require to be filtered for all messages except tracking messages (filter attribute &amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot;). This attribute is used on all WEBFLEET webservice calls to create, pop and acknowledge messages from that queue. This is only the case when the Site's System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;. This is only required when creating breaks through WEBFLEET. When the full {{#var:System}} system is in use, this will not be the case, and therefore the WEBFLEET messages can be more strictly filtered to only Order-based messages (filter attribute &amp;quot;ORDER_RELATED&amp;quot;). The mcgClass filter attribute on ''all'' WEBFLEET message queue methods in this document should be set to &amp;quot;ORDER_RELATED&amp;quot; if the Site's System Type (EPL_SYSTEM_TYPE) is anything except &amp;quot;PvA&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Care must be taken if implementing the full {{#var:System}} solution, that the old message queue is deleted after all messages are processed, and that the new message queue for orders is implemented ''before'' work starts under the new system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The response to a popQueueMessagesExtern message is as follows:&lt;br /&gt;
      &amp;lt;ns3:popQueueMessagesExternResponse &lt;br /&gt;
            xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; &lt;br /&gt;
            xmlns:ns3=&amp;quot;http://connect.webfleet.tomtomwork.com/services&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;return&amp;gt;&lt;br /&gt;
            &amp;lt;statusCode&amp;gt;9195&amp;lt;/statusCode&amp;gt;&lt;br /&gt;
            &amp;lt;statusMessage&amp;gt;...Details of the status...&amp;lt;/statusMessage&amp;gt;&lt;br /&gt;
            &amp;lt;errors&amp;gt;&lt;br /&gt;
               &amp;lt;errorInfo objectName=&amp;quot;QueueServiceParameter&amp;quot; fieldName=&amp;quot;filter&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msg&amp;gt;A value is required&amp;lt;/msg&amp;gt;&lt;br /&gt;
               &amp;lt;/errorInfo&amp;gt;&lt;br /&gt;
            &amp;lt;/errors&amp;gt;&lt;br /&gt;
            &amp;lt;resultSize&amp;gt;0&amp;lt;/resultSize&amp;gt;&lt;br /&gt;
            &amp;lt;results xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/return&amp;gt;&lt;br /&gt;
      &amp;lt;/ns3:popQueueMessagesExternResponse&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The above response object also shows the result should an error occur. TomTom Responses have been handled before when processing sending orders to WEBFLEET in the Auto Export process (in method EPOD_SYS_EXPORT.TomTomOrdersProcessData). A similar process should be implemented here:&lt;br /&gt;
* If the status code returned is 0, the message was successful.&lt;br /&gt;
* If the status code returned is 8011, request limits were reached - in this case treat this as a failure.&lt;br /&gt;
* If the status code returned is 9303, the message queue request failed - see the following section.&lt;br /&gt;
* Any other status code returned should be treated as a failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the message queue request failed, it may not be set up yet. This is indicated by the errorInfo/msg tag starting with &amp;quot;WFCQ_E0022&amp;quot;. If any other error message is received, write an XF Audit record, indicating &amp;quot;Unable to read from queue&amp;quot; plus the description from the msg tag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the queue has not been set up yet, the process should create it at this time. This is through a call to the createQueueExtern webservice method, populated as follows:&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ser:createQueueExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:createQueueExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To call this, simply replace the outer tags of the previous request and resend the SOAP request.&lt;br /&gt;
&lt;br /&gt;
The response object for this call is identical to the response to all other calls, except that the outer tag is createQueueExternResponse. Anything other than &amp;quot;0&amp;quot; (Success) in the status code means a failure to create the queue. In the case of failure, write an XF Audit record, indicating &amp;quot;Creation of queue failed&amp;quot; plus the description from the msg tag.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If the queue is created here, there is no need to continue with the process, as there will be no messages in the queue yet - the process can finish here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The results tag will contain the results in sub-tags called resultItem. Example files exist for this data returned. The following are example result items for each item that the process will be dealing with:&lt;br /&gt;
&lt;br /&gt;
'''Starting an Order:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949248423&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:05:06.008Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349133&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852108&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:05:04Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;241&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''In progress to an Order:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949319260&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:06:19.388Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000761&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: est. arrival 16:24, 11 mi to destination&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852109&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:06:16Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;241&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;eta&amp;gt;2016-06-20T15:24:56Z&amp;lt;/eta&amp;gt;&lt;br /&gt;
                  &amp;lt;distance&amp;gt;17249&amp;lt;/distance&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''On and Off a Break:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949851082&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:15:48.686Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;DATA&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;80000719&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;John Doe: Pause started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverNo driverNo=&amp;quot;44&amp;quot; driverUid=&amp;quot;1-44036-4637202118&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pndconn&amp;gt;0&amp;lt;/pndconn&amp;gt;&lt;br /&gt;
                  &amp;lt;tripMode&amp;gt;1&amp;lt;/tripMode&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852114&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:14:05Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                     &amp;lt;workstate&amp;gt;PAUSE&amp;lt;/workstate&amp;gt;&lt;br /&gt;
                     &amp;lt;sourceDevice&amp;gt;PND&amp;lt;/sourceDevice&amp;gt;&lt;br /&gt;
                     &amp;lt;eventTime&amp;gt;2016-06-20T15:14:05Z&amp;lt;/eventTime&amp;gt;&lt;br /&gt;
                  &amp;lt;/pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54949851641&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:15:49.258Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;DATA&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;80000719&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;John Doe: Work started&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverNo driverNo=&amp;quot;44&amp;quot; driverUid=&amp;quot;1-44036-4637202118&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;tripMode&amp;gt;2&amp;lt;/tripMode&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852114&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:14:25Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                     &amp;lt;workstate&amp;gt;WORKING&amp;lt;/workstate&amp;gt;&lt;br /&gt;
                     &amp;lt;sourceDevice&amp;gt;PND&amp;lt;/sourceDevice&amp;gt;&lt;br /&gt;
                     &amp;lt;eventTime&amp;gt;2016-06-20T15:14:25Z&amp;lt;/eventTime&amp;gt;&lt;br /&gt;
                  &amp;lt;/pndWorkingStateMessageData&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Cancellation:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54950259474&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:23:18.805Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;111100734&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000001: cancelled &amp;quot;unexpected cow&amp;quot;&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349131&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852117&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:23:16Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000001&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;301&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;userText&amp;gt;unexpected cow&amp;lt;/userText&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Rejection:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54950499987&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-20T15:27:50.947Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;111100731&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order TW0000000002: rejected &amp;quot;rejected by duck&amp;quot;&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349067&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2852166&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-20T15:27:48Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;282&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;7&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;TW0000000002&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;302&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;orderAddrNo&amp;gt;10151&amp;lt;/orderAddrNo&amp;gt;&lt;br /&gt;
                  &amp;lt;userText&amp;gt;rejected by duck&amp;lt;/userText&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Arrived at Delivery Location:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54856914199&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-17T14:06:20.409Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order 405511: arrived at delivery location&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349010&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2851930&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-17T14:06:19Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;2&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;405511&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;242&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Order Finished:'''&lt;br /&gt;
               &amp;lt;resultItem xsi:type=&amp;quot;ns4:QueueServiceData&amp;quot; &lt;br /&gt;
                    xmlns:ns4=&amp;quot;http://connect.webfleet.tomtomwork.com/transfer/messages&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;msgid messageId=&amp;quot;54856918353&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;msgTime&amp;gt;2016-06-17T14:06:24.714Z&amp;lt;/msgTime&amp;gt;&lt;br /&gt;
                  &amp;lt;msgClass&amp;gt;ORDER&amp;lt;/msgClass&amp;gt;&lt;br /&gt;
                  &amp;lt;msgType&amp;gt;110000760&amp;lt;/msgType&amp;gt;&lt;br /&gt;
                  &amp;lt;msgText&amp;gt;Order 405511: finished&amp;lt;/msgText&amp;gt;&lt;br /&gt;
                  &amp;lt;objectNo objectNo=&amp;quot;#T009&amp;quot; objectUid=&amp;quot;1-44036-9593E0A06&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;odometer&amp;gt;874543&amp;lt;/odometer&amp;gt;&lt;br /&gt;
                  &amp;lt;pos&amp;gt;&lt;br /&gt;
                     &amp;lt;latitude&amp;gt;53349020&amp;lt;/latitude&amp;gt;&lt;br /&gt;
                     &amp;lt;longitude&amp;gt;-2851940&amp;lt;/longitude&amp;gt;&lt;br /&gt;
                     &amp;lt;mapcode xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/pos&amp;gt;&lt;br /&gt;
                  &amp;lt;posText&amp;gt;Liverpool&amp;lt;/posText&amp;gt;&lt;br /&gt;
                  &amp;lt;posParams&amp;gt;town1_name=Liverpool;location_type=67;&amp;lt;/posParams&amp;gt;&lt;br /&gt;
                  &amp;lt;posTime&amp;gt;2016-06-17T14:06:23Z&amp;lt;/posTime&amp;gt;&lt;br /&gt;
                  &amp;lt;speed&amp;gt;0&amp;lt;/speed&amp;gt;&lt;br /&gt;
                  &amp;lt;course&amp;gt;0&amp;lt;/course&amp;gt;&lt;br /&gt;
                  &amp;lt;direction&amp;gt;1&amp;lt;/direction&amp;gt;&lt;br /&gt;
                  &amp;lt;status&amp;gt;A&amp;lt;/status&amp;gt;&lt;br /&gt;
                  &amp;lt;orderNo orderNo=&amp;quot;405511&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;orderState&amp;gt;401&amp;lt;/orderState&amp;gt;&lt;br /&gt;
                  &amp;lt;orderType&amp;gt;3&amp;lt;/orderType&amp;gt;&lt;br /&gt;
                  &amp;lt;dtMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;rllMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;driverKeyDeviceMessageData xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
               &amp;lt;/resultItem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All result items should be processed in sequence, by looping through them.&lt;br /&gt;
&lt;br /&gt;
The tags in this resultItem that are required are as follows:&lt;br /&gt;
* msgClass - for filtering messages.&lt;br /&gt;
* msgType - for filtering messages.&lt;br /&gt;
* objectNo - the vehicle's external (TomTom WEBFLEET) reference.&lt;br /&gt;
* odometer - the Odometer reading in KM. This may not be present, depending on hardware and configuration.&lt;br /&gt;
* pos/latitude - the latitude taken at the point of the message being generated, in micro degrees. This may not be present if there is not an adequate GPS signal at the time the message was created.&lt;br /&gt;
* pos/longitude - the longitude taken at the point of the message being generated, in micro degrees.  This may not be present if there is not an adequate GPS signal at the time the message was created.&lt;br /&gt;
* posTime - the date and time the message was created. ISO 8601-formatted date and time in the UTC timezone, combined representation in the extended format. Example: 2007-12-24T16:00:00Z.&lt;br /&gt;
* orderNo@orderNo - the unique order number passed to WEBFLEET when the order was created. For {{#var:System}} this will the value from External System ID, usually  the Site ID and Job ID combined. This differs for consolidated jobs and should be confirmed as to the actual value. &lt;br /&gt;
* orderState - for filtering messages.&lt;br /&gt;
* eta - the estimated time of arrival at the location for the order. ISO 8601-formatted date and time in the UTC timezone, combined representation in the extended format. Example: 2007-12-24T16:00:00Z.&lt;br /&gt;
* pndWorkingStateMessageData/workstate - determines break status.&lt;br /&gt;
* userText - the text entered when cancelling or rejecting an order on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}}&lt;br /&gt;
* A slash (/) in the tag name (e.g. pndWorkingStateMessageData/workstate) indicates that this is a sub-tag of another tag.&lt;br /&gt;
* An At symbol (@) in the tag name (orderNo@orderNo) indicates that this is an attribute of the named tag.&lt;br /&gt;
* Tags (and sub-tags) may not exist for each message, so each tag must be extracted and checked individually, or the errors handled when extracting values from tags.&lt;br /&gt;
* Longitudes and Latitudes are stored in micro-degrees and must be divided by 1,000,000 for storing in {{#var:System}}.&lt;br /&gt;
* Times are in xsd:dateTime format and must be converted. Furthermore, they are in UTC, and must be converted to the local server timezone when storing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''General Processing'''&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for the result msgClass tag values &amp;quot;DATA&amp;quot; and &amp;quot;ORDER&amp;quot; only.&lt;br /&gt;
* Convert the date/time from the posTime tag in the result.&lt;br /&gt;
* Convert the ETA date/time from the eta tag in the result, if present.&lt;br /&gt;
* Convert and validate the ODO reading from the odometer tag in the result, if present.&lt;br /&gt;
* Convert and validate the GPS location from the pos tag, sub-tags latitude and longitude in the result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Processing of result records with an order state value:'''&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for the result msgClass tag value &amp;quot;ORDER&amp;quot; and for the following orderState tag values:&lt;br /&gt;
** 221 - Pickup order started&lt;br /&gt;
** 222 - Arrived at Pickup location&lt;br /&gt;
** 241 - Delivery order started&lt;br /&gt;
** 242 - Arrived at Delivery location&lt;br /&gt;
** 301 - Cancelled&lt;br /&gt;
** 302 - Rejected&lt;br /&gt;
** 401 - Finished&lt;br /&gt;
* Get the Job or Jobs (EPOD_JOB) using the extracted Site (EPL_SITE_ID) and External System Reference (EPL_EXTERNAL_SYSTEM_ID) from the orderNo tag attribute value. {{Note}} There can be multiple jobs for the External System Reference.&lt;br /&gt;
* Stop processing this result record if this job is completed or cancelled (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;). Write an Audit record for the job, status &amp;quot;F&amp;quot; - see later for details.&lt;br /&gt;
* Get the Load (EPOD_LOAD) from the Job's Load ID (EPL_LOAD_ID). Store the Load ID in a list of loads processed from this response.&lt;br /&gt;
* Stop processing this result record if this load is completed or cancelled (EPL_STATUS = &amp;quot;C&amp;quot; or &amp;quot;X&amp;quot;). Write an Audit record for the job, status &amp;quot;F&amp;quot; - see later for details.&lt;br /&gt;
* Get the Vehicle (EPOD_VEHICLE) from the Load's Vehicle ID (EPL_VEHICLE_ID).&lt;br /&gt;
* Set the Vehicle's last position, date and time as follows:&lt;br /&gt;
** Set the Last Position (EPL_LAST_POSITION) from the converted values of the result tags latitude and longitude values, concatenated with a comma.&lt;br /&gt;
** Set the Last Position Date and time (EPL_LAST_POSITION_DATE and EPL_LAST_POSITION_TIME) from the extracted date and time from the tag posTime value, translated into OBS format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order states 221 and 241 (order started):&lt;br /&gt;
** Set the Actual Start date and time if not already populated (EPL_START_ACTUAL_DATE and EPL_START_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, set the Job or Jobs status (EPL_STATUS) to &amp;quot;I&amp;quot; - In Progress if not already in progress.&lt;br /&gt;
** If the job was not already in progress, find any other in-progress jobs against the load and set to status pending (EPL_STATUS set to &amp;quot;P&amp;quot;). If they already have a value in start odometer (EPL_ODO_START), set the distance travelled (EPL_DISTANCE_ACTUAL) to tag odometer value minus the value in the jobs' start odometer and zero the jobs' start odometer value.&lt;br /&gt;
** Set the ETA date and time against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME) from the tag eta value, if present, translated into OBS format.&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** If present in the incoming result, set the Start Odometer reading on the Job or Jobs (EPL_ODO_START) to the tag odometer value, if not already populated.&lt;br /&gt;
** If present in the incoming result, set the ODO start against the Load (EPL_MILEAGE_START) from the tag odometer value, if not already populated.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order states 222 and 242 (arrived at location):&lt;br /&gt;
** Update Arrival date and time against the job or jobs if not already populated (EPL_ARRIVAL_DATE and EPL_ARRIVAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order state 401 (Finished):&lt;br /&gt;
** Set the Actual End date and time if not already populated (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, set the Job or Jobs status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete if not already complete.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the tag odometer value.&lt;br /&gt;
** If present in the incoming result, set the End Odometer reading on the Job to the tag odometer value.&lt;br /&gt;
** If not yet populated, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** If the status of the job (EPL_STATUS) is not &amp;quot;I&amp;quot; (In Progress), set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, complete all child records for the job or jobs (i.e. Containers, Products, Service Items), by setting the status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order status 301 (Cancelled) or order status 302 (Rejected):&lt;br /&gt;
** Set the Actual End date and time if not already populated (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag  posTime value, translated into OBS format.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, Set Job or Jobs status (EPL_STATUS) to &amp;quot;X&amp;quot; - Cancelled.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, Set the Reason Code against the Job or Jobs (EPL_REASON_CODE) to &amp;quot;TWCD&amp;quot; (for order status 301) or &amp;quot;TWRD&amp;quot; (for order status 302).&lt;br /&gt;
** Set the User Notes (EPL_USER_NOTES) against the Job or Jobs to be the tag userText value.&lt;br /&gt;
** Remove the ETA date and time if present against the Job or Jobs (EPL_ETA_DATE and EPL_ETA_TIME).&lt;br /&gt;
** If present in the incoming result, set the Odometer reading on the Vehicle (EPL_VEHICLE_MILEAGE) to the incoming odometer value.&lt;br /&gt;
** If not yet populated, set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value (EPL_ODO_START), plus any value already in the distance travelled.&lt;br /&gt;
** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, cancel all child records for the job or jobs (i.e. Containers, Products, Service Items), by setting the status (EPL_STATUS) to &amp;quot;X&amp;quot; - Cancelled.&lt;br /&gt;
** Write a User Tracking record for each of the jobs - see below for details. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* For order status 301 (Cancelled), 302 (Rejected) and 401 (Complete):&lt;br /&gt;
** Check all the jobs on the Load. &lt;br /&gt;
*** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, if all have been completed or cancelled, set the Load status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
*** If all have been completed or cancelled and if the tag odometer value is present, set the ODO end against the load if not set (EPL_MILEAGE_END) from this incoming value. Set the Actual Distance travelled against the load (EPL_LOAD_DISTANCE_ACTUAL) to be the ODO end (EPL_MILEAGE_END)) minus the ODO start (EPL_MILEAGE_START), if both values are non-zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ignore any other messages than the ones above, if the System Type (EPL_SYSTEM_TYPE) is ''not'' &amp;quot;PvA&amp;quot; - breaks will not be processed through this TomTom WEBFLEET interface when the full {{#var:System}} system is being run.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Processing of result records without an order state value:'''&lt;br /&gt;
These messages are used predominantly to generate breaks indicated by the driver.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Drivers Pausing and Starting work will generate new breaks and update in progress jobs. Breaks will not be generated if the driver is already in-progress on a pre-existing break job. Pre-existing break jobs (for example, generated by DiPS) will not be updated or confirmed when the driver pauses or starts work on the WEBFLEET device.&lt;br /&gt;
&lt;br /&gt;
* Filter (ignore) any messages that are not being processed by this interface. Initially, the list should be filtered for tag msgClass value &amp;quot;DATA&amp;quot; and the following message types (extracted from the last 3 digits of the value in the msgType tag):&lt;br /&gt;
** 711 - Log-off driver (including tachograph driver card removed) - treat as end of break.&lt;br /&gt;
** 712 - Begin of work, driver indicated - treat as end of break.&lt;br /&gt;
** 713 - End of work, driver indicated - treat as end of break.&lt;br /&gt;
** 714 - Begin of break, driver indicated - treat as start of break.&lt;br /&gt;
** 715 - End of break, driver indicated - treat as end of break.&lt;br /&gt;
** 716 - Work status change, indicating driver role, old and new work status (applies to all PRO 71xx, 91xx devices when used with identified driver and Remote LINK Working Time). If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;PAUSE&amp;quot;, treat as start of break. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;WORKING&amp;quot;, treat as end of break.&lt;br /&gt;
** 717 - Work started (driver role and driver name indicated) - treat as end of break.&lt;br /&gt;
** 718 - Work ended (driver role and driver name indicated) - treat as end of break.&lt;br /&gt;
** 719 - Work time event, indicating driver. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;PAUSE&amp;quot;, treat as start of break. If the tag pndWorkingStateMessageData sub-tag workstate value is &amp;quot;WORKING&amp;quot;, treat as end of break.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* If treating the message as Start of Break:&lt;br /&gt;
** Find the Vehicle(s) (EPOD_VEHICLE) through the External System Reference (EPL_EXT_REF) from tag objectNo attribute value, for sites that match the fleet parameter from the extraction (EPL_XF_RECIPIENT from EPOD_XF_CONFIG).&lt;br /&gt;
** Find the load in progress on that Site (EPL_SITE_ID) and vehicle ID (EPL_VEHICLE_ID), for all matching vehicles. If one is not found, do not process this message.&lt;br /&gt;
** Find a job (EPOD_JOB) on the load that is a break (either generated by the system or generated by DiPS) that is status In Progress (EPL_STATUS is &amp;quot;I&amp;quot;). If there is one, ignore this message, as a break is already started.&lt;br /&gt;
** Find the first job on that load that is not complete i.e. the status (EPL_STATUS) is &amp;quot;P&amp;quot; - Pending - or &amp;quot;I&amp;quot; - In Progress, ordering by the status In Progress (i.e. those jobs should be the first jobs found).&lt;br /&gt;
&amp;lt;!--** If this next job found is a break, update it as follows:&lt;br /&gt;
*** If the break job is not in progress (EPL_STATUS is not &amp;quot;I&amp;quot;), set the Actual Start date and time (EPL_START_ACTUAL_DATE and EPL_START_ACTUAL_TIME from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the Arrival date and time (EPL_ARRIVAL_DATE	and EPL_ARRIVAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the break job's ODO Start (EPL_ODO_START) from the tag odometer value if present, if the break job is not in progress (EPL_STATUS is not &amp;quot;I&amp;quot;).&lt;br /&gt;
*** Set the break job's status to In Progress (EPL_STATUS = &amp;quot;I&amp;quot;).&lt;br /&gt;
*** Set the Last Changed date and time (EPL_LAST_CHANGED_DATE and EPL_LAST_CHANGED_TIME) to the current server time, in OBS format.&lt;br /&gt;
** If the next job found is not a break, create a new break job as follows: --&amp;gt;&lt;br /&gt;
** Create a new break job as follows:&lt;br /&gt;
*** EPL_SITE_ID	- From the found Load's Site ID&lt;br /&gt;
*** EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
*** EPL_JOB_ID	- Generated&lt;br /&gt;
*** EPL_JOB_CODE	- &amp;quot;BRK_&amp;lt;EPL_LOAD_ID&amp;gt;_&amp;lt;EPL_SEQUENCE_NO&amp;gt;&amp;quot;. The tagged values should be substituted with the found Load ID, and the DIPS column value LINK SEQ NO respectively.&lt;br /&gt;
*** EPL_JOB_TYPE	- &amp;quot;D&amp;quot;&lt;br /&gt;
*** EPL_JOB_GROUP	- &amp;quot;OTHER&amp;quot;&lt;br /&gt;
*** EPL_JOB_INSTRUCTION	- &amp;quot;Driver Break&amp;quot;&lt;br /&gt;
*** EPL_START_PLANNED_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_PLANNED_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_ACTUAL_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_START_ACTUAL_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_ARRIVAL_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_ARRIVAL_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_END_PLANNED_DATE	- from the tag posTime value.&lt;br /&gt;
*** EPL_END_PLANNED_TIME	- from the tag posTime value.&lt;br /&gt;
*** EPL_DISTANCE_PLANNED	- 0&lt;br /&gt;
*** EPL_CUSTOMER_CODE	- &amp;quot;BREAK&amp;quot;&lt;br /&gt;
*** EPL_CUSTOMER_NAME	- &amp;quot;Driver Break &amp;quot; concatenated with the sequence (EPL_SEQUENCE) and the Load ID (EPL_LOAD_ID) from the found job.&lt;br /&gt;
*** EPL_ADDRESS_1	- &amp;quot;Driver Break &amp;quot; concatenated with the sequence (EPL_SEQUENCE) and the Load ID (EPL_LOAD_ID) from the found job.&lt;br /&gt;
*** EPL_POSTCODE	- The postcode from the found job.&lt;br /&gt;
*** EPL_SEQUENCE	- The sequence from the found job&lt;br /&gt;
*** EPL_LOADING_TYPE	- Blank&lt;br /&gt;
*** EPL_TRAVEL_PLANNED	- 0&lt;br /&gt;
*** EPL_WORK_PLANNED	- 0	&lt;br /&gt;
*** EPL_LAT	- from the tag pos, sub-tag latitude value, converted to degrees.&lt;br /&gt;
*** EPL_LONG	- from tag pos, sub-tag longitude value, converted to degrees.&lt;br /&gt;
*** EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
*** EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
*** EPL_ODO_START - from the tag odometer value, if present.&lt;br /&gt;
*** EPL_GENERATED - &amp;quot;Y&amp;quot; - Generated by the driver.&lt;br /&gt;
*** EPL_STATUS - &amp;quot;I&amp;quot; - In Progress&lt;br /&gt;
** Write a User Tracking record for the Break job created or updated to In Progress, indicating &amp;quot;WEBFLEET - Start of Break&amp;quot; - see below for details. &lt;br /&gt;
{{Note}} When the first matching vehicle with an in progress load is found, stop processing any further records.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If no EPOD_XF_CONFOG exists for the site for the WEBFLEET job update for that fleet for that vehicle, ignore the updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* If treating the message as End of Break:&lt;br /&gt;
** Find the Vehicle(s) (EPOD_VEHICLE) through the External System Reference (EPL_EXT_REF) from tag objectNo attribute value, for sites that match the fleet parameter from the extraction (EPL_XF_RECIPIENT from EPOD_XF_CONFIG).&lt;br /&gt;
** Find the load in progress on that Site (EPL_SITE_ID) and vehicle ID (EPL_VEHICLE_ID), for all matching vehicles. If one is not found, do not process this message.&lt;br /&gt;
** Find a job (EPOD_JOB) on the load that is a driver-generated break that is status In Progress (EPL_STATUS is &amp;quot;I&amp;quot;). If there is not one one, ignore this message.&lt;br /&gt;
** If there is one, update it as follows:&lt;br /&gt;
*** Set the Actual End date and time (EPL_END_ACTUAL_DATE and EPL_END_ACTUAL_TIME) from the tag posTime value, translated into OBS format.&lt;br /&gt;
*** Set the break job's ODO End (EPL_ODO_END) from the tag odometer value if present.&lt;br /&gt;
*** Set the break job's status to Complete (EPL_STATUS = &amp;quot;C&amp;quot;.&lt;br /&gt;
*** Set the Last Changed date and time (EPL_LAST_CHANGED_DATE and EPL_LAST_CHANGED_TIME) to the current server time, in OBS format.&lt;br /&gt;
*** Set the driving time (EPL_DRIVING_TIME) from the Arrival time on the job (EPL_ARRIVAL_TIME) minus the Actual Start time on the job (EPL_START_ACTUAL_DATE), plus any value already in this Driving Time field.&lt;br /&gt;
*** Set the actual work time (EPL_WORK_ACTUAL) from the Actual End time on the job (EPL_END_ACTUAL_TIME) minus the Arrival time on the job (EPL_ARRIVAL_TIME), plus any value already in this actual work time field.&lt;br /&gt;
*** Set the distance travelled (EPL_DISTANCE_ACTUAL) to the tag odometer value minus the start odometer value on the job (EPL_ODO_START), plus any value already in this distance travelled job field.&lt;br /&gt;
** If the break job found is a driver-generated break job, find any non-break jobs in progress (EPL_STATUS = &amp;quot;I&amp;quot;) on the load. If found, set the distance (EPL_DISTANCE_ACTUAL) and travel time (EPL_DRIVING_TIME) on all the jobs to be the current values minus the values on the break job just updated, plus any value already in these fields. This will then remove the distance and travel that was added to the Break job from the job in progress, for the Planned vs Actual reporting later.&lt;br /&gt;
** Write a User Tracking record for the Break job created or updated to In Progress, indicating &amp;quot;WEBFLEET - End of Break&amp;quot; - see below for details. &lt;br /&gt;
** Check all the jobs on the Load. &lt;br /&gt;
*** If the System Type (EPL_SYSTEM_TYPE) is &amp;quot;PvA&amp;quot;, if all have been completed or cancelled, set the Load status (EPL_STATUS) to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
*** If all have been completed or cancelled and if the tag odometer value is present, set the ODO end against the load if not set (EPL_MILEAGE_END) from this incoming value. Set the Actual Distance travelled against the load (EPL_LOAD_DISTANCE_ACTUAL) to be the ODO end (EPL_MILEAGE_END)) minus the ODO start (EPL_MILEAGE_START), if both values are non-zero.&lt;br /&gt;
{{Note}} When the first matching vehicle with an in progress load is found, stop processing any further records.&lt;br /&gt;
&lt;br /&gt;
{{Note}} If no EPOD_XF_CONFOG exists for the site for the WEBFLEET job update for that fleet for that vehicle, ignore the updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Any messages in the result that do not match the filtered messages above can be ignored - no audit is required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} When writing order tracking records to EPOD_USER_AUDIT, all of the normal details should be entered. This should be sourced from the Job record being updated unless specified otherwise:&lt;br /&gt;
* Site ID&lt;br /&gt;
* User ID - From the Load&lt;br /&gt;
* Vehicle ID - From the Load&lt;br /&gt;
* Load ID - From the Load&lt;br /&gt;
* Job ID&lt;br /&gt;
* Message Type - dependent on the tag orderState of the result being processed:&lt;br /&gt;
** 221 or 241 - &amp;quot;WEBFLEET - Order Started&amp;quot;&lt;br /&gt;
** 222 or 242- &amp;quot;WEBFLEET - Order Arrived&amp;quot;&lt;br /&gt;
** 301 - &amp;quot;WEBFLEET - Order Cancelled&amp;quot;&lt;br /&gt;
** 302 - &amp;quot;WEBFLEET - Order Rejected&amp;quot;&lt;br /&gt;
** 401 - &amp;quot;WEBFLEET - Order Complete&amp;quot;&lt;br /&gt;
** If this is Blank and the process is treating this as a Start of Break - &amp;quot;WEBFLEET - Start of Break&amp;quot;&lt;br /&gt;
** If this is Blank and the process is treating this as an End of Break - &amp;quot;WEBFLEET - End of Break&amp;quot;&lt;br /&gt;
* GPS Coordinates - from the converted values of the input tag pos, sub-tags latitude and longitude values, concatenated with a comma.&lt;br /&gt;
* Audit Date - The server date as of the time the record is processed.&lt;br /&gt;
* Audit Time - The server time as of the time the record is processed.&lt;br /&gt;
* Job Type&lt;br /&gt;
* Device Date - extracted date from the tag posTime value, translated into OBS format.&lt;br /&gt;
* Device Time - extracted time from the tag posTime value, translated into OBS format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Once messages taken from the queue in this message response are successfully processed, the process must use the webservice method ackQueueMessagesExtern to acknowledge completion of the message transfer to the application. Otherwise, the messages will be kept and returned again during the next call to popQueueMessagesExtern.&lt;br /&gt;
&lt;br /&gt;
{{Note}} In order to prevent this system from being flooded with over-sized responses, the number of messages that will be returned on a single response is limited to 500. This limit can be adjusted per account on request.&lt;br /&gt;
&lt;br /&gt;
The structure of the ackQueueMessagesExtern method is identical to the above Pop message, except for the name, as follows: &lt;br /&gt;
      &amp;lt;ser:ackQueueMessagesExtern&amp;gt;&lt;br /&gt;
         &amp;lt;aParm&amp;gt;&lt;br /&gt;
            &amp;lt;accountName&amp;gt;EPL_XF_RECIPIENT&amp;lt;/accountName&amp;gt;&lt;br /&gt;
            &amp;lt;userName&amp;gt;EPL_WEB_USER&amp;lt;/userName&amp;gt;&lt;br /&gt;
            &amp;lt;password&amp;gt;EPL_WEB_PASSWORD&amp;lt;/password&amp;gt;&lt;br /&gt;
            &amp;lt;apiKey&amp;gt;EPL_XF_MSG_TYPE&amp;lt;/apiKey&amp;gt;&lt;br /&gt;
         &amp;lt;/aParm&amp;gt;&lt;br /&gt;
         &amp;lt;gParm&amp;gt;&lt;br /&gt;
            &amp;lt;locale&amp;gt;UK&amp;lt;/locale&amp;gt;&lt;br /&gt;
            &amp;lt;timeZone&amp;gt;Europe_London&amp;lt;/timeZone&amp;gt;&lt;br /&gt;
         &amp;lt;/gParm&amp;gt;&lt;br /&gt;
         &amp;lt;msgClass filter=&amp;quot;ALL_EXCEPT_POSITION_MESSAGES&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/ser:ackQueueMessagesExtern&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Again, the response to this message will be the same as the other WEBFLEET messages, except that the outer tag is ackQueueMessagesExternResponse. Regardless of status, the &lt;br /&gt;
      &lt;br /&gt;
Should the value of the tag resultSize be 500, this whole process of retrieving, processing and acknowledging messages should be repeated. This should continue until the result size is less than 500 (i.e. there are no more messages on the queue).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Should there be a problem processing the messages from the queue, an audit record of the row detail and the error code should be created in EPOD_XF_AUDIT_HEADER. Failing a single message does not result in the message failing - these should always be acknowledged. Failures encountered server-side (failures within {{#var:System}} should result in not acknowledging the message, so that they may be reprocessed later by re-reading them from the queue.&lt;br /&gt;
&lt;br /&gt;
When writing Audit records for failures and successes, the records should be populated as follows. If not specified, the values should be derived from the job:&lt;br /&gt;
* Site.&lt;br /&gt;
* Job Group, if this is an audit related to a job.&lt;br /&gt;
* Header ID - Generated.&lt;br /&gt;
* Request Data - If Failure, the resultItem tag and contents.&lt;br /&gt;
* Request Date - The server date as of the time the record is processed.&lt;br /&gt;
* Request Time - The server time as of the time the record is processed.&lt;br /&gt;
* Status - &amp;quot;S&amp;quot; for Success, &amp;quot;F&amp;quot; for Fail, as indicated above when writing the audit record.&lt;br /&gt;
* Status Description - If Success, &amp;quot;Jobs Updated&amp;quot;, else the reason for the failure (e.g. &amp;quot;Load already completed&amp;quot;, &amp;quot;Job already cancelled&amp;quot;, etc) as indicated above.&lt;br /&gt;
* Key Value 1 - The Job Code, if this is an audit related to a job.&lt;br /&gt;
* Key Value 2 - The Job ID, if this is an audit related to a job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing all aspects of the WEBFLEET - {{#var:System}} Update Interface.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=Create 2 loads with jobs configured as per the example Load in the supplied CSV extraction from DiPS.&lt;br /&gt;
|Objective=To test that: jobs are updated with all actual information; Loads are updated correctly; jobs done out of sequence are updated taking into account any intermediate distance and time; driver-generated breaks are created correctly; jobs completed with breaks whilst in progress are updated taking into account any intermediate distance and time.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 1 - Normal Processing.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Accept and Start Loading job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Arrive Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Arrival Date/Time and End ODO updated, Travel Time and Distance updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job Complete, Actual End Date/Time updated, Work Time updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Accept, Start and Complete Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Reject Delivery Job 2.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel Delivery Job 3.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Break 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Consolidated Delivery 1.&lt;br /&gt;
|Result=All Jobs updated in C-ePOD as before in stages - final result: Jobs Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel Consolidated Delivery 2.&lt;br /&gt;
|Result=All Jobs updated in C-ePOD as before in stages - final result: Jobs Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Break 2 before the next job (out of sequence).&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Delivery Job 4.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Unloading.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Load updated to Complete, End ODO updated. Next Load automatically set to In Progress (not part of this test).&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}}  {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 2 - Out of sequence.&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Loading Job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start and Drive to Delivery Job 1. Do not Arrive at Job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job In Progress, Actual Start Date/Time, Job Start ODO updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start, Arrive and Complete Delivery Job 2 before completing Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Delivery Job 1.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Distance Travel times take into account the distance and time travelled on the job 2 in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Cycle 3 - Driver-generated Breaks.&lt;br /&gt;
|Notes=Continuing from Cycle 2.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Pause Work.&lt;br /&gt;
|Result=Creates new break job as specified.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start Work.&lt;br /&gt;
|Result=Updates new break job - Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel preadvised break job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start Consolidated jobs 1.&lt;br /&gt;
|Result=Job updated in C-ePOD - Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. &lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Pause and Start Work.&lt;br /&gt;
|Result=Creates and updates new break job in stages as before: Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. Updates In-progress Consolidated Jobs 1 wrt Time and Distance taken away for the time and distance taken on the Break.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Continue Consolidated jobs. Pause and Start Work again.&lt;br /&gt;
|Result=Creates and updates new break job in stages as before: Job In Progress, Actual Start Date/Time updated on Load and Job, Load and Job Start ODO updated. Updates In-progress Consolidated Jobs 1 wrt Time and Distance taken away for the time and distance taken on the next Break added to the previous break.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Consolidated Jobs 1.&lt;br /&gt;
|Result=Jobs updated in C-ePOD as before in stages - final result: Jobs Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Jobs. Distance, Work and Travel times take into account the distance, work and time travelled on the 2 break jobs in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete consolidated jobs 2.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Start the next job. Pause and Start work, complete job.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Distance, Work and Travel times take into account the distance, work and time travelled on the break job in between.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel preadvised Break.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Cancelled, User Notes, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Complete Unloading.&lt;br /&gt;
|Result=Job updated in C-ePOD as before in stages - final result: Job Complete, Actual Start Date/Time, Job Start and End ODO, Arrival Date/Time, Travel Time, Distance,  Actual End Date/Time and Work Time updated on Job. Load updated to Complete, End ODO updated.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|Ref2=EPOD Import Mapping&lt;br /&gt;
|RefV2=5.1.2&lt;br /&gt;
|RefDate2=17/06/2016&lt;br /&gt;
|Ref3=EPOD Export Mapping&lt;br /&gt;
|RefV3=5.1.2&lt;br /&gt;
|RefDate3=17/06/2016&lt;br /&gt;
|Ref4=WEBFLEET.connect Reference&lt;br /&gt;
|RefV4=1.28.0&lt;br /&gt;
|RefDate4=31/03/2016&lt;br /&gt;
|Ref4=obs-eas-DIPS2AXS for PvA.xls&lt;br /&gt;
|RefV4=N/A&lt;br /&gt;
|RefDate4=24/06/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=1.75&lt;br /&gt;
|TS=1.75&lt;br /&gt;
|DEV=7.25&lt;br /&gt;
|ST=1.50&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.50&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336014_SCR-332569-5_GK_PvA_ePOD-WEBFLEET_Mods&amp;diff=3509</id>
		<title>FS 336014 SCR-332569-5 GK PvA ePOD-WEBFLEET Mods</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336014_SCR-332569-5_GK_PvA_ePOD-WEBFLEET_Mods&amp;diff=3509"/>
		<updated>2016-08-23T11:33:02Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|ePOD-WEBFLEET Interface Modifications}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336014 SCR-332569-5}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
Some slight modifications to the way that data is sent to TomTom WEBFLEET for orders will be undertaken&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
* Job Instructions will include the order reference to be displayed.&lt;br /&gt;
* The Planned Date and Time will be amended to be the Expected Arrival Date and Time (Planned Start Date/Time within CALIDUS ePOD).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Set-up  =&lt;br /&gt;
&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
&lt;br /&gt;
== Auto-Export  ==&lt;br /&gt;
Some slight modifications to the way that data is sent to TomTom WEBFLEET for orders will be undertaken:&lt;br /&gt;
* Job Instructions will include the order reference to be displayed.&lt;br /&gt;
* The Planned Date and Time will be amended to be the Expected Arrival Date and Time (Planned Start Date/Time within CALIDUS ePOD).&lt;br /&gt;
&lt;br /&gt;
Currently the Order Text sent to WEBFLEET is the Job Instructions only. This will be modified so that the Job Code is inserted before the Instructions, so that it can be visible on the device when completing the job. Where jobs are consolidated, the Job Code of all the jobs should be present, concatenated with a slash (&amp;quot;/&amp;quot;) character. The Job Code is expected to be populated with the ORDER OR SHIPMENT IDENT from the DiPS interface (example &amp;quot;3031298&amp;quot;). The Job Instructions is expected to be populated with ORDER SPECIAL DELIVERY INST (example &amp;quot;pls call 30m b4 del 07970884489 Kul&amp;quot;), and the concatenated weight and quantity (example &amp;quot;179 KILOGRAM, 6 D-RB, 33 W+S&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The final instructions sent to WEBFLEET will then be as follows:&lt;br /&gt;
    &amp;quot;3031298 pls call 30m b4 del 07970884489 Kul 179 KILOGRAM, 6 D-RB, 33 W+S&amp;quot;&lt;br /&gt;
    &amp;quot;6030158/6029870 pls call 30m b4 del 07970884489 Kul 179 KILOGRAM, 6 D-RB, 33 W+S&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Currently the End Planned date and time are sent to WEBFLEET as the Scheduled Completion Date and Time. This will be modified to be the Start Planned Date and Time. This will be populated in the interface from DiPS as EAT AT CALL. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Developer Notes:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The data is populated in method EPODServer.EPOD_SYS_EXPORT.TomTomOrdersGetRequestXML.&lt;br /&gt;
&lt;br /&gt;
strOrderText will now be populated with:&lt;br /&gt;
    drData[&amp;quot;EPL_JOB_CODE&amp;quot;].ToString()).Trim() concatenated with (drData[&amp;quot;EPL_JOB_INSTRUCTION&amp;quot;].ToString()).Trim()&lt;br /&gt;
&lt;br /&gt;
Dates will now be populated with:&lt;br /&gt;
    iDate = (int)drData[&amp;quot;EPL_END_PLANNED_DATE&amp;quot;];&lt;br /&gt;
    iTime = (int)drData[&amp;quot;EPL_END_PLANNED_TIME&amp;quot;];&lt;br /&gt;
&lt;br /&gt;
Given the nature of the way that data is populated in the interface, there is no need to control this data population with flags in the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Test modifications to the WEBFLEET interface.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=An active WEBFLEET orders interface.&lt;br /&gt;
|Objective=To test that orders are created in WEBFLEET with the new details.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=WEBFLEET Export&lt;br /&gt;
|Notes=Ensure an active WEBFLEET interface is created.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a load with jobs - ensure the Start and End Planned Dates and Times are different, that the Job Codes are set and different, and that the Instructions are populated. Assign the load to a WEBFLEET-enabled vehicle.&lt;br /&gt;
|Result=In WEBFLEET, the orders should be created on that vehicle with Dates/Times as per the Planned End Date, and the Instructions are populated with the Job Code as well as the instructions.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a load with consolidated jobs - ensure the Start and End Planned Dates and Times are different, that the Job Codes are set and different, and that the Instructions are populated. Assign the load to a WEBFLEET-enabled vehicle.&lt;br /&gt;
|Result=As the prior test, but the consolidated jobs should have all of the Job Codes listed on the instructions.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.25&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0.50&lt;br /&gt;
|ST=0.25&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336013_SCR-332569-4_GK_PvA_Automatically_Set_Loads_In_Progress&amp;diff=3508</id>
		<title>FS 336013 SCR-332569-4 GK PvA Automatically Set Loads In Progress</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336013_SCR-332569-4_GK_PvA_Automatically_Set_Loads_In_Progress&amp;diff=3508"/>
		<updated>2016-08-23T11:04:52Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|Automatically Set Loads In Progress}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336013 SCR-332569-4}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
Once the DiPS import is complete, the drivers will require the ability to execute the jobs through TomTom WEBFLEET. In order to achieve that, CALIDUS ePOD must generate the orders on to TomTom WEBFLEET. A process already exists to complete that, when loads are set to In Progress. The setting of loads to this status is normally achieved through the CALIDUS ePOD devices requesting a load. As ''CALIDUS'' ePOD will not be in use at this time, a process will be required to automatically set the status of the earliest loads for a vehicle to In Progress.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
The process will be capable of being configured by Site (Depot). Any loads at status In Progress or Pending will be checked and the earliest load for that vehicle will be marked in progress. This will then automatically trigger a requirement to send this load to TomTom WEBFLEET. If there was already a load in progress for the vehicle, this load will be changed back to Pending and TomTom WEBFLEET will be informed to remove any jobs associated to this load from the worklist.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only vehicles configured with a TomTom External ID within CALIDUS ePOD will have orders sent to them.&lt;br /&gt;
* Only jobs that are not yet complete will be sent to TomTom WEBFLEET.&lt;br /&gt;
* Only Loads In Progress will be sent to TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
{{Note}} Parts of the testing of this change will be completed with 336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Set-up  =&lt;br /&gt;
&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
&lt;br /&gt;
== Database/DAL  ==&lt;br /&gt;
A new EPOD_SITE flag will be added to control automatically setting loads in progress.&lt;br /&gt;
* EPL_AUTO_IN_PROGRESS_LOAD_IND - numeric flag, defaulting to 0.&lt;br /&gt;
This should be added to all database procedures and DAL objects. It is not necessary to add this as a searchable item.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Admin ==&lt;br /&gt;
A new value to the existing Site-level flag System Type will be added to control PvA-specific functionality.&lt;br /&gt;
&lt;br /&gt;
The new value will be &amp;quot;PVA&amp;quot;, description &amp;quot;Planned vs Actual&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== System ==&lt;br /&gt;
Whenever a load has the status updated to Complete or Cancelled, or has the vehicle changed, or has the start planned date or time changed, the process will check the following:&lt;br /&gt;
* That the vehicle has an external ID (i.e. is enabled for WEBFLEET).&lt;br /&gt;
* That automatic status change to In Progress is required (through the new value of the system flag)&lt;br /&gt;
* That this is the earliest planned load for that vehicle.&lt;br /&gt;
If this is the case, the Load Status should be set to In Progress and then call the following two existing procedures:&lt;br /&gt;
    // Update other loads for this user or vehicle but if only if the load has successfully been updated&lt;br /&gt;
    EPOD_LOAD.LoadUserOrVehicleChanged();&lt;br /&gt;
    // Create EPOD_XF_CONTROL record if the load has successfully been updated&lt;br /&gt;
    EPOD_LOAD.CreateXFControlRecord();&lt;br /&gt;
&lt;br /&gt;
These will have the following effect:&lt;br /&gt;
* Check the load for changes of vehicle/user&lt;br /&gt;
* Create the record to process the sending of the Load and all jobs to WEBFLEET if required.&lt;br /&gt;
* Change any prior Loads in progress to Pending.&lt;br /&gt;
&lt;br /&gt;
This new check should be created as a new method of the EPOD_LOAD object.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Load Status may be updated from the following procedures:&lt;br /&gt;
* The Load Assignment screen (load_assignment.aspx)&lt;br /&gt;
* The Load Header admin screen (load_header.aspx)&lt;br /&gt;
* When Loads are updated through the Upload process (Upload.aspx)&lt;br /&gt;
* When Flat File Uploads are processed automatically (EPOD_DATAPROCESS.cs)&lt;br /&gt;
* When External Webservices update loads (EPOD_DATASERVICE.cs and MessageProcess.cs)&lt;br /&gt;
* When a device updates loads (MessageProcess.cs)&lt;br /&gt;
{{Note}} This is not a complete list - ALL areas should be modified.&lt;br /&gt;
&lt;br /&gt;
The new procedure for processing DiPS files (in EPOD_DATAPROCESS.cs, specified in 336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing) should also be changed for this purpose.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Test loads automatically set to in progress.&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=N/A&lt;br /&gt;
|Objective=To test that; the Site flag may be properly configured by the Admin system; any mechanism of changing the load status, date or vehicle results in the load being set to In Progress, any previous load being reset, and the new load being sent to WEBFLEET.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Admin Maintenance&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Edit the new flag so that this is set to the new value, and save the changes.&lt;br /&gt;
|Result=The flag may be edited and changed to the new value.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Auto Load In Progress&lt;br /&gt;
|Notes=Ensure the Site System flag is set to PvA initially. &lt;br /&gt;
Ensure that there are at least 2 vehicles, one with an external ID and one without. &lt;br /&gt;
Ensure that there is are at least 2 loads per vehicle.&lt;br /&gt;
Ensure WEBFLEET interfaces are enabled for this site.&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Add a new load for a WEBFLEET-enabled vehicle through the Webservices. Ensure this is the earliest planned date.&lt;br /&gt;
|Result=The load should be set to In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Amend another load for the same Vehicle to be an earlier planned date/time in the Load screen.&lt;br /&gt;
|Result=The load should be set to In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load. The original In Progress load should be reset to Pending.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Update the original load to an earlier date using a Flat File format.&lt;br /&gt;
|Result=The load should be set to In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load. The original In Progress load should be reset to Pending.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Update the load to a later date using the Load screen.&lt;br /&gt;
|Result=The load should be set to status Pending. The earlier load should be set to status In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Deallocate the In Progress load from this vehicle.&lt;br /&gt;
|Result=The load should be set to status Pending. The earlier load should be set to status In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Allocate the load to a vehicle without WEBFLEET integration.&lt;br /&gt;
|Result=Nothing.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Allocate the load to a WEBFLEET vehicle. Complete all jobs on the Load (through ePOD or WEBFLEET).&lt;br /&gt;
|Result=The load should be completed. The next load for that vehicle should be set to status In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Cancel the next load through the Admin screen.&lt;br /&gt;
|Result=The load should be cancelled. The next load for that vehicle should be set to status In Progress. A message for this load should be set on the XF Control. Messages should be sent to WEBFLEET for the jobs on this load.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Set the System flag back to Generic. Add an earlier load for the WEBFLEET enabled vehicle through Webservices.&lt;br /&gt;
|Result=The load should be created but not automatically set in progress.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|EEST=0&lt;br /&gt;
|EFS=0.25&lt;br /&gt;
|ETS=0.25&lt;br /&gt;
|EDEV=1.75&lt;br /&gt;
|ESTT=0.25&lt;br /&gt;
|EIMP=0&lt;br /&gt;
|EPM=0.25&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.25&lt;br /&gt;
|TS=0.25&lt;br /&gt;
|DEV=1.75&lt;br /&gt;
|ST=0.25&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.25&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336012_SCR-332569-3_GK_PvA_Add_Time_Windows&amp;diff=3507</id>
		<title>FS 336012 SCR-332569-3 GK PvA Add Time Windows</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336012_SCR-332569-3_GK_PvA_Add_Time_Windows&amp;diff=3507"/>
		<updated>2016-08-23T11:00:06Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|Add Time Windows}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336012/SCR-332569-3}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
In order to support the functionality required within the Planned Vs Actual report regarding time windows, the application will be modified to store the time windows information from the DiPS interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
These will be added as new table, at Job level, to account for potential multiple time windows. The data is assumed to be taken from OPENING/CLOSING TIME 2 at this time. There is no way of identifying or specifying multiple delivery windows or customer delivery windows in the way that Aurora and DiPS plan jobs at this time. A customer is expected to always have a delivery window configured against it, and that it may change (by configuration) for each day of the week if required. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
Although this change will be made capable of storing multiple time windows against a job or against a customer, the interface here will only create job windows, and only one of them per job. Should Aurora and DiPS (or the interface between them) be modified to support multiple windows, or there is a product requirement to add multiple customer windows, this will generate additional cost. It is not expected that this will be required at this time.&lt;br /&gt;
&lt;br /&gt;
The changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time will be added part of the full solution defined in that project.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Testing of this change will be part of the 336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Set-up  =&lt;br /&gt;
&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
This change is part of the 336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing. Set up for that change must be completed so that this may be tested.&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
None&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
None&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
&lt;br /&gt;
== Database/DAL  ==&lt;br /&gt;
These will be added as new table, at Job level, to account for potential multiple time windows. The data is assumed to be taken from OPENING/CLOSING TIME 1/2 at this time. There is no way of identifying or specifying multiple delivery windows or customer delivery windows in the way that Aurora and DiPS plan jobs at this time. A customer is expected to always have a delivery window configured against it, and that it may change (by configuration) for each day of the week if required. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The new table will be called EPOD_TIME_WINDOW and will be structured as follows:&lt;br /&gt;
* ETW_ID - an auto-generated number.&lt;br /&gt;
* ETW_SITE_ID - nvarchar(10)&lt;br /&gt;
* ETW_TYPE - nvarchar(1)&lt;br /&gt;
* ETW_FK_ID - nvarchar(30)&lt;br /&gt;
* ETW_TIME_START - number&lt;br /&gt;
* ETW_TIME_END - number&lt;br /&gt;
There will be primary key added as follows:&lt;br /&gt;
* ETW_ID - an auto-generated number.&lt;br /&gt;
An index will be added called ETW_TYPE as follows:&lt;br /&gt;
* ETW_SITE_ID - nvarchar(10)&lt;br /&gt;
* ETW_TYPE - nvarchar(1)&lt;br /&gt;
* ETW_FK_ID - nvarchar(30)&lt;br /&gt;
&lt;br /&gt;
A new DAL object will be created to access this data. Database procedures will be created &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The table must support being linked to a job or to a customer. This is through the new index.&lt;br /&gt;
* For jobs, this is expected to be populated with the job's Site ID, the Type as &amp;quot;J&amp;quot; and the Foreign Key ID as the Job ID (EPL_JOB_ID of EPOD_JOB).&lt;br /&gt;
* For customers, this is expected to be populated with the customer's Site ID, the Type as &amp;quot;C&amp;quot; and the Foreign Key ID as the customer ID (EPL_CUSTOMER_CODE of EPOD_CUSTOMER).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Archiving routines must be updated to delete these new records when deleting Customers or when deleting Jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
&lt;br /&gt;
{{Note}} Testing of this change will be part of the 336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=336010/SCR-332569-2 DiPS-ePOD Interface for Load and Order Sequencing&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=23/08/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0.5&lt;br /&gt;
|TS=0.5&lt;br /&gt;
|DEV=2.75&lt;br /&gt;
|ST=0.5&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.25&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336010_SCR-332569-2_GK_PvA_DiPS-ePOD_Interface&amp;diff=3506</id>
		<title>FS 336010 SCR-332569-2 GK PvA DiPS-ePOD Interface</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=FS_336010_SCR-332569-2_GK_PvA_DiPS-ePOD_Interface&amp;diff=3506"/>
		<updated>2016-08-23T10:56:38Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' EPOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|DiPS-ePOD Interface for Load and Order Sequencing}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|23rd August 2016}}&lt;br /&gt;
{{#vardefine:Reference|336010 SCR-332569-2}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=FS {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Functional Overview  =&lt;br /&gt;
&lt;br /&gt;
== Client Requirement  ==&lt;br /&gt;
Orders will be exported from Aurora into DiPS for route planning. DiPS is a route optimisation tool which optimises the drops in to the optimum route. When planned within DiPS, the routed orders with load details will be exported back into Aurora, through an existing interface, consisting of only limited details. At this time, DiPS will also generate a new fully-populated CSV for import into {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
The file will be generated from DiPS in mid-afternoon for the following day - they will then be finalised and sent through to TomTom.&lt;br /&gt;
&lt;br /&gt;
The file will contain all fields that can be exported from DiPS, to minimise any additional work required for any future requirements.&lt;br /&gt;
&lt;br /&gt;
The file will contain all routes for individual depot, or all routes for all depots. Routes must be assigned to a vehicle &amp;amp; driver. Routes must contain postcodes and/or valid Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
An example full file export has been provided and is referenced in Appendix B.&lt;br /&gt;
&lt;br /&gt;
This file will be generated to a local or network folder, accessible by {{#var:System}} - this can be through an FTP account or file sharing. It will be expected to be named uniquely, as a variant of DIPS2AXS.TXT. Note that the name must either be unique per export, or unique per depot, or created as a different name then renamed for {{#var:System}} to pick up, to prevent partial uploading of the file.&lt;br /&gt;
&lt;br /&gt;
{{#var:System}} will be modified to automatically import the file through a process triggered to run every few minutes. This will be a bespoke process written specifically for this purpose.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additional orders, cancellation of orders and changes to orders already received throughout the day will necessitate changes to the plan. Aurora and DiPS will follow the same process to send orders across to DiPS and route plan them. When exported from DiPS, the same import file will be created for all of the orders and loads.&lt;br /&gt;
&lt;br /&gt;
When uploading files with orders and loads that have already been created, the process will update any existing Loads and Orders with the information from the new import file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Solution Overview  ==&lt;br /&gt;
The process will process the file and create Loads and Jobs from the information provided.&lt;br /&gt;
&lt;br /&gt;
The first depot job on a load will be marked as a loading job, and all subsequent depot jobs on a load will be marked as an unloading job. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;LOA&amp;quot; or &amp;quot;UNL&amp;quot; and the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
Break jobs on a load will be generated as a normal job with customer 'BREAK'. They will be given a job address based on the BREAK customer, but with a Lat/Long set as the last job processed on the load. The instructions will be the break length. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;BRK&amp;quot;, plus the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} DiPS can provide a planned driver break on the inbound file, in between of the execution of orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
No functionality is included here to make Break jobs visible within ''CALIDUS'' ePOD specifically as Break job types or to handle them differently to collections or deliveries on the mobile device. If the full ''CALIDUS'' ePOD solution is put in place, a further change will be undertaken there to handle break jobs on the Android device and within the general administration screens. This will be added as a change in the Greene King ''CALIDUS'' ePOD solution design document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Load created will be stored in the normal tables within ''CALIDUS'' ePOD, with additional fields created for the new planned data.&lt;br /&gt;
&lt;br /&gt;
The process will generate the following standard ''CALIDUS'' ePOD tables:&lt;br /&gt;
* EPOD_LOAD - each unique load will be created, within the Site (Depot) owning the load.&lt;br /&gt;
* EPOD_JOB - a unique job will be created for the order on the load specified.&lt;br /&gt;
* EPOD_CUSTOMER - A customer record will be automatically created if one does not already exist, including the Lat/Long of the address.&lt;br /&gt;
* EPOD_JOB_ADDRESS - if the customer record exists, but the address or information on it differs to the information on the job, an Address will be created specifically for the job.&lt;br /&gt;
* EPOD_VEHICLE - A vehicle record will be automatically created for vehicle assigned to the load, based on the Vehicle Registration, if one does not already exist. {{Note}} Vehicles created automatically in this way will not have a TomTom ID (Object ID) assigned to them, meaning that loads for vehicles automatically generated in this way will NOT be automatically sent to TomTom until this is completed.&lt;br /&gt;
* EPOD_USER - a driver record will be automatically created based on the driver name received from DiPS. This driver ID will be generated from the driver name, and provided a generic password. {{Note}} Although not part of this project, these automatically created drivers may then be used on ''CALIDUS'' ePOD devices to complete the jobs. This will be disabled until ''CALIDUS'' ePOD is implemented.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following assumptions are made regarding the data that ''CALIDUS'' ePOD will use:&lt;br /&gt;
* Load&lt;br /&gt;
** Site - the depot, from CALLS OWNING DEPOT&lt;br /&gt;
** Load ID - from CALLOVER SEQUENCE NO. {{Note}} This load ID '''must''' be unique for every load ever created for a depot.&lt;br /&gt;
** Load Planned Start/End times - from the individual jobs on the load.&lt;br /&gt;
** Vehicle ID - generated from VEHICLE IDENT&lt;br /&gt;
** User ID - generated from DRIVER'S NAME OR CARRIER&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Route Code - TRIP LABEL&lt;br /&gt;
* Job&lt;br /&gt;
** Job Code (the main reference) - ORDER OR SHIPMENT ID. {{Note}} This reference '''must''' be unique for for the order on the load (it can appear as a collection and a delivery if required).&lt;br /&gt;
** Job Type - These will be identified as Delivery jobs only, regardless of whether they are collections or deliveries within DiPS. If functionality is added between Aurora and DiPS to identify collections to DiPS, this may generate additional development. As this would only affect the full ''CALIDUS'' ePOD solution (if implemented), this will be added as change to that project. &lt;br /&gt;
** Job Group (the main configuration of the execution of the jobs) - based on the job type, hard-coded. For Loading, Unloading and Break jobs, a different job group will be used to Collections and Deliveries.&lt;br /&gt;
** Job Instructions - a concatenation of the weights/quantities, or ORDER SPECIAL DELIVERY INST&lt;br /&gt;
** Planned Start Date/Time (Planned Arrival) - OPENING TIME 1&lt;br /&gt;
** Planned End Date/Time - CLOSING TIME 1&lt;br /&gt;
** Planned Distance - TRAVEL DISTANCE TO NEXT CALL from previous job on this load&lt;br /&gt;
** Customer Code - IDENT OF CALL OR DEPOT&lt;br /&gt;
** Customer Details, from:&lt;br /&gt;
*** Name - ADDRESS LINE 1&lt;br /&gt;
*** Address - ADDRESS LINE 2/3/4/5/POSTCODE&lt;br /&gt;
*** Telephone - TELEPHONE NUMBER&lt;br /&gt;
** Sequence on Job List - LINK SEQ NO&lt;br /&gt;
** Loading Type - For Depot jobs.&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Planned Travel Time (Minutes) - TRAVEL TIME TO NEXT CALL from the previous job&lt;br /&gt;
*** Planned Work Time (Minutes) - WORK TIME&lt;br /&gt;
*** ETA Date and Time - For TomTom WEBFLEET integration&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Time windows will be also be added to the jobs here if present in the file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additional orders, cancellation of orders and changes to orders already received throughout the day will necessitate changes to the plan. Aurora and DiPS will follow the same process to send orders across to DiPS and route plan them. When exported from DiPS, the same import file will be created for all of the orders and loads.&lt;br /&gt;
&lt;br /&gt;
When uploading files with orders and loads that have already been created, the process will update any existing Loads and Orders with the information from the new import file.&lt;br /&gt;
&lt;br /&gt;
When all imports are completed for a load, the process will check if any orders already on the load were not included in the new upload. If orders are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
When all load imports are completed, the process will check if any loads already in the system for that date were not included in the new upload file. If loads are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scope  ==&lt;br /&gt;
{{Note}} This process will be used to create loads and jobs for a particular date. It is expected that this import will always interface all loads and jobs for the date. This can then be used to determine loads or jobs which are no longer valid, which can be removed from the {{#var:System}} database.&lt;br /&gt;
&lt;br /&gt;
{{Note}} This import is expected to be in Load and Job order. No additional orders for a load will be found in this file after the file has moved on to another load.&lt;br /&gt;
&lt;br /&gt;
{{Note}} One file is expected to be imported per depot. These files should never be combined, and should retain either a unique naming convention or unique directory for the file to be found.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Set-up  =&lt;br /&gt;
&lt;br /&gt;
== Pre-requisites  ==&lt;br /&gt;
&lt;br /&gt;
== Menu Structure  ==&lt;br /&gt;
&lt;br /&gt;
== Data  ==&lt;br /&gt;
The Site must be linked to the XF Config ID for the file to be imported. This is expected to be set during the implementation. This is achieved through the Site maintenance screen in the {{#var:System}} Admin console, from the Admin tab, XF Config drop-down list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Users generated through this process will be consistent and reused. However, they will have a default password created for them by this process, which should be changed to a reasonable and secure password through the {{#var:System}} Admin User Maintenance screen before use. For usability, the users created are enabled immediately, so this should be dealt with by the administrative users quickly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Functional Description  =&lt;br /&gt;
&lt;br /&gt;
== Database/DAL  ==&lt;br /&gt;
A new field will be added to the EPOD_LOAD table to hold the value of the Route Code from DiPS (TRIP LABEL):&lt;br /&gt;
* EPL_ROUTE_CODE - nvarchar(40).&lt;br /&gt;
All database packages and the DAL object will be updated to update this new field. &lt;br /&gt;
{{Note}} It is not necessary to add this field as a search-able item.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
New fields will be added to the EPOD_JOB table to hold various new values, as follows:&lt;br /&gt;
* EPL_TRAVEL_PLANNED - Planned Travel Time, in whole numbers of minutes - number.&lt;br /&gt;
* EPL_WORK_PLANNED - Planned Work Time, in whole numbers of minutes - number.&lt;br /&gt;
* EPL_ETA_DATE - ETA date from TomTom WEBFLEET in YYYYMMDD format - number&lt;br /&gt;
* EPL_ETA_TIME - ETA time from TomTom WEBFLEET in HHMMSShh format - number&lt;br /&gt;
All database packages and the DAL object will be updated to update these new fields. &lt;br /&gt;
{{Note}} It is not necessary to add these fields as search-able items.&lt;br /&gt;
&lt;br /&gt;
The existing field EPL_DISTANCE_PLANNED should be changed to be a float type (i.e. capable of storing decimal values).&lt;br /&gt;
&lt;br /&gt;
{{Note}} As standard, these fields will be added to the standard XML Webservice Import and Export flows. These changes (and all others for the project) have been documented and referenced in [[#Appendix B: Quote &amp;amp; Document References|Appendix B]]. The standard XMLUpload.XSD file describing the XML in detail will also be updated as part of this project. Note also that the type of the distance planned object must change to &amp;quot;xsd:float&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following fields must be added to the standard Webservice import when creating addresses (customer or job):&lt;br /&gt;
* EPL_LAT&lt;br /&gt;
* EPL_LONG&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Admin ==&lt;br /&gt;
=== XF Config Maintenance ===&lt;br /&gt;
The screen will allow the following to be created/edited:&lt;br /&gt;
* Config ID - The ID (e.g. GK).&lt;br /&gt;
* The Config Name - (e.g. DIPS Orders).&lt;br /&gt;
* Type - FILE or FTP only.&lt;br /&gt;
* ID - DIPS - DIPS Orders.&lt;br /&gt;
* Destination - the destination folder for the FTP Get or the FILE pick-up location.&lt;br /&gt;
* Direction - I - Inbound only.&lt;br /&gt;
* Filename - a filename pattern, for example &amp;quot;DIPS2EPOD_*.xls&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The screen will only allow these elements to be entered or edited, based on the ID (DIPS) selected.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Auto-Import ==&lt;br /&gt;
The existing Auto Import process will be modified to identify the new DIPS import id. If a configuration is found for this new type, the new DIP Import process will be run, passing in this file.&lt;br /&gt;
&lt;br /&gt;
{{Note}} This message type can be processed as FILE or FTP.&lt;br /&gt;
&lt;br /&gt;
The standard processing for FILE and FTP types should be followed, in that the file to be imported should be found in the directory specified matching the pattern of the filename specified in the configuration. When found, the file should be copied and imported through the new DIPS orders import process.&lt;br /&gt;
&lt;br /&gt;
{{Note}} One file is expected to be imported per depot. These files should never be combined, and should retain either a unique naming convention or unique directory for the file to be found.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== DIPS Import Process ===&lt;br /&gt;
{{Note}} This process will be used to create loads and jobs for a particular date. It is expected that this import will always interface all loads and jobs for the date. This can then be used to determine loads or jobs which are no longer valid, which can be removed from the {{#var:System}} database.&lt;br /&gt;
&lt;br /&gt;
{{Note}} This import is expected to be in Load and Job order. No additional orders for a load will be found in this file after the file has moved on to another load.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The extract file from DiPS contains over 150 columns. At this time, only a small section of these values will be used. However, it may be that this needs to expand for the customer in the future. To ensure that this process is easier to maintain moving forward, the extract file sent to {{#var:System}} will contain all the columns, with a header row labelling the contents. The process will be written in such a way as to extract the values by searching for the column required. This will make the function easier to maintain and more extensible in the future, should the format change or the required data in the file change.&lt;br /&gt;
&lt;br /&gt;
The first row of the file being uploaded will be read, to determine the necessary columns to extract. This will be stored in a property of the import function.&lt;br /&gt;
A getRowVal method will be written to identify the column, by searching for the value in the header row. This will be passed the header row, and will search the header property for the passed-in column header, and will return the value from this column in the row. If the column is not found, NULL should be returned, to identify this, different to when a column is found, but the data value is zero-length.&lt;br /&gt;
&lt;br /&gt;
So accessing the column data will be as in the following typical example:&lt;br /&gt;
    With the header row (e.g. dsData.Tables[0].Rows[0]) being stored first,&lt;br /&gt;
    getRowVal(Row, &amp;quot;ORDER SPECIAL DELIVERY INST&amp;quot;)].ToString();&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process created here should be similar to the OBS Import process in structure, in that:&lt;br /&gt;
* Loads are found and created if required&lt;br /&gt;
* Jobs are found and created if required&lt;br /&gt;
* Standing Data (e.g. Vehicles, Users) should be found and created if necessary.&lt;br /&gt;
* Existing data not found on the export file will be removed after the update if they were not updated as part of this run.&lt;br /&gt;
&lt;br /&gt;
The process will read through each row (storing the header row as identified previously) and process the inbound records.&lt;br /&gt;
&lt;br /&gt;
The Site for the upload will be set from the Site to which the XF configuration is linked.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Create Standing Data ====&lt;br /&gt;
The process will generate a Vehicle ID. This will be through the value in VEHICLE IDENT. The vehicle record will be found using the Site and Vehicle ID, using the found Site ID and VEHICLE IDENT. If not found, this will be created with the following values:&lt;br /&gt;
* Site: the found Site ID&lt;br /&gt;
* Vehicle ID: VEHICLE IDENT with any spaces removed.&lt;br /&gt;
* Vehicle Reg/Description: VEHICLE IDENT&lt;br /&gt;
* Status: &amp;quot;Y&amp;quot;, indicating Active.&lt;br /&gt;
* Last Updated Date and Time: Now&lt;br /&gt;
&lt;br /&gt;
The process will generate a User ID. This will be from the value in DRIVER'S NAME OR CARRIER. This ID will be based on the first letter of the first name followed by the surname, lowercase converted. The user will be found. If the name stored matches DRIVER'S NAME OR CARRIER, this will be used. If the names do not match, a single digit (starting at 1) will appended to the name and be incremented by one, and the process repeated until the matching name is found, or no record is found.&lt;br /&gt;
If a record is not found, one will be created, as follows:&lt;br /&gt;
* Site: the found Site ID&lt;br /&gt;
* User ID: The generated user ID&lt;br /&gt;
* Password: &amp;quot;PASSWORD&amp;quot;&lt;br /&gt;
* User Name: DRIVER'S NAME OR CARRIER&lt;br /&gt;
* Admin: &amp;quot;N&amp;quot;&lt;br /&gt;
* Active: &amp;quot;Y&amp;quot;&lt;br /&gt;
* Last Updated Date and Time: Now&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Creating Loads ====&lt;br /&gt;
The process will find the load through the Site and Load id, from the found Site ID and CALLOVER SEQUENCE NUMBER respectively.&lt;br /&gt;
&lt;br /&gt;
If the load is already present and complete or cancelled, no update to this load will be made and no jobs will be imported on this load.&lt;br /&gt;
If the load is already present, the load will be updated with the following information:&lt;br /&gt;
* EPL_LOAD_START_PLANNED_DATE - DEPARTURE DATE (removing the last digit, as this is in format &amp;quot;YYYYMMDDW&amp;quot;)&lt;br /&gt;
* EPL_VEHICLE_ID	- from the found/created Vehicle ID&lt;br /&gt;
* EPL_USER_ID	- From the found/created User ID&lt;br /&gt;
* EPL_TRAILER_ID	- TRAILER_IDENT&lt;br /&gt;
* EPL_LOAD_INFORMATION	- ROUTE_IDENT&lt;br /&gt;
* EPL_TIMEZONE	- As normal, from the server&lt;br /&gt;
* EPL_STATUS	&amp;quot;P&amp;quot;, if not already created, else to be left at current status.	&lt;br /&gt;
* EPL_ROUTE_CODE	- TRIP_LABEL&lt;br /&gt;
&lt;br /&gt;
The load should NOT be updated at this time, only when the load changes or no more records exist in the file to be imported.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Create Jobs ====&lt;br /&gt;
The process will then create Delivery and Break jobs from the data.&lt;br /&gt;
&lt;br /&gt;
The process will find the job using the found Site ID, the found/created Load ID, the ORDER OR SHIPMENT ID from the file (the job code) and the Job Type, based on the column &amp;quot;ENTITY TYPE (C,D, K)&amp;quot;. &lt;br /&gt;
For ENTITY TYPE (C,D, K):&lt;br /&gt;
* If this column is &amp;quot;B&amp;quot; or &amp;quot;C&amp;quot;, the Job Type is &amp;quot;D&amp;quot;. &lt;br /&gt;
* If this column is &amp;quot;D&amp;quot;, and this is the first job processed on this load, the job type is &amp;quot;C&amp;quot;, else &amp;quot;D&amp;quot;.&lt;br /&gt;
* If this column is &amp;quot;D&amp;quot;, the ORDER OR SHIPMENT ID will be blank. If so, the Job Code should be generated as &amp;quot;LOA_&amp;lt;EPL_LOAD_ID&amp;gt;_&amp;lt;LINK SEQ NO&amp;gt;&amp;quot;, if this is the first job processed on the Load. If this is not the first job on the load, this should be generated as &amp;quot;UNL_&amp;lt;EPL_LOAD_ID&amp;gt;_&amp;lt;LINK SEQ NO&amp;gt;&amp;quot;. The tagged values should be substituted with the found Load ID, and the DIPS column value LINK SEQ NO respectively.&lt;br /&gt;
* If this column is &amp;quot;B&amp;quot;, the ORDER OR SHIPMENT ID will be blank. If so, the Job Code should be generated as &amp;quot;BRK_&amp;lt;EPL_LOAD_ID&amp;gt;_&amp;lt;LINK SEQ NO&amp;gt;&amp;quot;, replacing the tags as above.&lt;br /&gt;
&lt;br /&gt;
If the job is found, this job will be updated if the status is not &amp;quot;X&amp;quot; or &amp;quot;C&amp;quot; (complete or cancelled). If not found, this job will be created. The Job ID will be generated if the job is not found.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Create Delivery Jobs ====&lt;br /&gt;
&lt;br /&gt;
For Delivery Job Types:&lt;br /&gt;
* EPL_SITE_ID	- From the found Site ID&lt;br /&gt;
* EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
* EPL_JOB_ID	- Generated if not found&lt;br /&gt;
* EPL_JOB_CODE	- As generated above&lt;br /&gt;
* EPL_JOB_TYPE	- As generated above&lt;br /&gt;
* EPL_JOB_GROUP	- &amp;quot;DEL&amp;quot;.&lt;br /&gt;
* EPL_JOB_INSTRUCTION	- see the section below this for details.&lt;br /&gt;
* EPL_START_PLANNED_DATE	- DEPARTURE DATE (YYYYMMDDW) (removing the last digit)&lt;br /&gt;
* EPL_START_PLANNED_TIME	- EAT AT CALL&lt;br /&gt;
* EPL_END_PLANNED_DATE	- DEPARTURE DATE (YYYYMMDDW) (removing the last digit)&lt;br /&gt;
* EPL_END_PLANNED_TIME	- EDT AT CALL&lt;br /&gt;
* EPL_DISTANCE_PLANNED	- TRAVEL DISTANCE TO NEXT CALL	From previous job&lt;br /&gt;
* EPL_CUSTOMER_CODE	- IDENT OF CALL OR DEPOT&lt;br /&gt;
* EPL_CUSTOMER_NAME	- ADDRESS LINE 1&lt;br /&gt;
* EPL_ADDRESS_1	- ADDRESS LINE 3&lt;br /&gt;
* EPL_ADDRESS_2	- ADDRESS LINE 4&lt;br /&gt;
* EPL_ADDRESS_3	- ADDRESS LINE 5&lt;br /&gt;
* EPL_ADDRESS_5	- COUNTRY CODE&lt;br /&gt;
* EPL_POSTCODE	- POSTCODE&lt;br /&gt;
* EPL_CONTACT - ADDRESS LINE 2 if not &amp;quot;.&amp;quot;&lt;br /&gt;
* EPL_TELEPHONE	- TELEPHONE NUMBER&lt;br /&gt;
* EPL_ORDER_DATE	- defaulted to Now()		&lt;br /&gt;
* EPL_SEQUENCE	- LINK SEQ NO	&lt;br /&gt;
* EPL_LINKED_ID - Generated from CUSTOMER SEQ - see below&lt;br /&gt;
* EPL_LOADING_TYPE	- Blank&lt;br /&gt;
* EPL_ORDER_TIME	- defaulted to Now()		&lt;br /&gt;
* EPL_TRAVEL_PLANNED	- TRAVEL TIME TO NEXT CALL	From previous job&lt;br /&gt;
* EPL_WORK_PLANNED	- WORK TIME	&lt;br /&gt;
* EPL_LAT	- LATITUDE	&lt;br /&gt;
* EPL_LONG	- LONGITUDE	&lt;br /&gt;
* EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
* EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
&lt;br /&gt;
As per normal processing, a Customer should be created if one does not exist. A Job Address should be generated if the details of the address differ to that stored against the Customer Code, if one is found already stored.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Generating Time Windows'''&lt;br /&gt;
&lt;br /&gt;
Time Windows should be generated for the job if there are non-zero values in the OPENING and CLOSING TIME fields in the incoming file. There are two sets of these values:&lt;br /&gt;
* OPENING TIME 1 and CLOSING TIME 1&lt;br /&gt;
* OPENING TIME 2 and CLOSING TIME 2&lt;br /&gt;
If non-zero values are found in these fields, an EPOD_TIME_WINDOW record should be created for each pair:&lt;br /&gt;
&lt;br /&gt;
* ETW_SITE_ID - From the found Site ID&lt;br /&gt;
* ETW_TYPE - &amp;quot;J&amp;quot;&lt;br /&gt;
* ETW_FK_ID - EPL_JOB_ID from the found/created Job.&lt;br /&gt;
* ETW_TIME_START - OPENING TIME&lt;br /&gt;
* ETW_TIME_END - CLOSING TIME&lt;br /&gt;
&lt;br /&gt;
{{Note}} This DAL object is created in ''SCR FS 336012 SCR-332569-3 GK PvA Add Time Windows''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Generating Job Instructions'''&lt;br /&gt;
&lt;br /&gt;
The Job Instructions is expected to be populated with ORDER SPECIAL DELIVERY INST (example &amp;quot;pls call 30m b4 del 07970884489 Kul&amp;quot;), and the concatenated weight and quantity (example &amp;quot;179 KILOGRAM, 6 D-RB, 33 W+S&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The weight and quantity will be taken from the following fields, if populated and having a non-zero value:&lt;br /&gt;
* DELIVERY PRODUCT 1 to DELIVERY_PRODUCT 12, using LABEL PRODUCT 1 to LABEL PRODUCT 12&lt;br /&gt;
The values will be concatenated with &amp;quot;, &amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;silver&amp;quot;&lt;br /&gt;
! No !! DELIVERY PRODUCT !! LABEL PRODUCT&lt;br /&gt;
|-&lt;br /&gt;
|1	||179	||KGS &lt;br /&gt;
|-&lt;br /&gt;
|2	||2	||TUBS&lt;br /&gt;
|-&lt;br /&gt;
|3	||0	||ETUB&lt;br /&gt;
|-&lt;br /&gt;
|4	||0	||D-RB&lt;br /&gt;
|-&lt;br /&gt;
|5	||0	||E-RB&lt;br /&gt;
|-&lt;br /&gt;
|6	||6	||CASE&lt;br /&gt;
|-&lt;br /&gt;
|7	||0	||S-LP&lt;br /&gt;
|-&lt;br /&gt;
|8	||0	||S-SP&lt;br /&gt;
|-&lt;br /&gt;
|9	||0	||C-LP&lt;br /&gt;
|-&lt;br /&gt;
|10	||0	||C-SP&lt;br /&gt;
|-&lt;br /&gt;
|11	||0	||W+S &lt;br /&gt;
|-&lt;br /&gt;
|12	||2639	||ITEM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The weight and quantity string generated would be:&lt;br /&gt;
    &amp;quot;179 KGS, 2 TUBS, 6 CASE, 2639 ITEM&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This will then be concatenated with the ORDER SPECIAL DELIVERY INST to for the job instructions. The final instructions stored in this example will be as follows:&lt;br /&gt;
    &amp;quot;pls call 30m b4 del 07970884489 Kul 179 KGS, 2 TUBS, 6 CASE, 2639 ITEM&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Generating Linked IDs'''&lt;br /&gt;
Linked IDs are used to consolidate jobs at the same address together on the device. The DiPS interface provides enough information to achieve this.&lt;br /&gt;
&lt;br /&gt;
For normal delivery jobs, the value should be generated as the value in CUSTOMER SEQ, multiplied by 10.&lt;br /&gt;
&lt;br /&gt;
For Loading, Unloading or Break jobs, the value should be stored as the previous job's value in the Linked ID, plus 1.&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
==== Create Loading/Unloading Jobs ====&lt;br /&gt;
&lt;br /&gt;
Loading and Unloading Job Types are populated almost identically to delivery jobs:&lt;br /&gt;
* EPL_SITE_ID	- From the found Site ID&lt;br /&gt;
* EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
* EPL_JOB_ID	- Generated if not found&lt;br /&gt;
* EPL_JOB_CODE	- As generated above&lt;br /&gt;
* EPL_JOB_TYPE	- As generated above&lt;br /&gt;
* EPL_JOB_GROUP	- &amp;quot;DEL&amp;quot;.&lt;br /&gt;
* EPL_JOB_INSTRUCTION	- Blank&lt;br /&gt;
* EPL_START_PLANNED_DATE	- DEPARTURE DATE&lt;br /&gt;
* EPL_START_PLANNED_TIME	- EAT AT CALL&lt;br /&gt;
* EPL_END_PLANNED_DATE	- DEPARTURE DATE&lt;br /&gt;
* EPL_END_PLANNED_TIME	- EDT AT CALL&lt;br /&gt;
* EPL_DISTANCE_PLANNED	- TRAVEL DISTANCE TO NEXT CALL	From previous job&lt;br /&gt;
* EPL_CUSTOMER_CODE	- IDENT OF CALL OR DEPOT&lt;br /&gt;
* EPL_CUSTOMER_NAME	- ADDRESS LINE 1&lt;br /&gt;
* EPL_ADDRESS_1	- ADDRESS LINE 2&lt;br /&gt;
* EPL_ADDRESS_5	- COUNTRY CODE&lt;br /&gt;
* EPL_POSTCODE	- POSTCODE&lt;br /&gt;
* EPL_TELEPHONE	- TELEPHONE NUMBER&lt;br /&gt;
* EPL_ORDER_DATE	- defaulted to Now()		&lt;br /&gt;
* EPL_SEQUENCE	- LINK SEQ NO&lt;br /&gt;
* EPL_LINKED_ID	- As generated above&lt;br /&gt;
* EPL_LOADING_TYPE	- if first job, &amp;quot;L&amp;quot;, else &amp;quot;U&amp;quot;&lt;br /&gt;
* EPL_ORDER_TIME	- defaulted to Now()		&lt;br /&gt;
* EPL_TRAVEL_PLANNED	- TRAVEL TIME TO NEXT CALL	From previous job&lt;br /&gt;
* EPL_WORK_PLANNED	- WORK TIME	&lt;br /&gt;
* EPL_LAT	- LATITUDE	&lt;br /&gt;
* EPL_LONG	- LONGITUDE	&lt;br /&gt;
* EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
* EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
==== Creating Break Jobs ====&lt;br /&gt;
&lt;br /&gt;
For Break Jobs, the Job fields should be created as follows:&lt;br /&gt;
* EPL_SITE_ID	- From the found Site ID&lt;br /&gt;
* EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
* EPL_JOB_ID	- Generated if not found&lt;br /&gt;
* EPL_JOB_CODE	- As generated above&lt;br /&gt;
* EPL_JOB_TYPE	- &amp;quot;D&amp;quot;&lt;br /&gt;
* EPL_JOB_GROUP	- &amp;quot;OTHER&amp;quot;&lt;br /&gt;
* EPL_JOB_INSTRUCTION	- ADDRESS LINE 1&lt;br /&gt;
* EPL_START_PLANNED_DATE	- DEPARTURE DATE&lt;br /&gt;
* EPL_START_PLANNED_TIME	- EAT AT CALL&lt;br /&gt;
* EPL_END_PLANNED_DATE	- DEPARTURE DATE&lt;br /&gt;
* EPL_END_PLANNED_TIME	- EDT AT CALL&lt;br /&gt;
* EPL_DISTANCE_PLANNED	- TRAVEL DISTANCE TO NEXT CALL	From previous job&lt;br /&gt;
* EPL_CUSTOMER_CODE	- &amp;quot;BREAK&amp;quot;&lt;br /&gt;
* EPL_CUSTOMER_NAME	- IDENT OF CALL OR DEPOT concatenated with CALLOVER SEQUENCE NUMBER&lt;br /&gt;
* EPL_ADDRESS_1	- IDENT OF CALL OR DEPOT concatenated with CALLOVER SEQUENCE NUMBER&lt;br /&gt;
* EPL_ADDRESS_5	- COUNTRY CODE&lt;br /&gt;
* EPL_POSTCODE	- EPL_POSTCODE from previous job.&lt;br /&gt;
* EPL_ORDER_DATE	- defaulted to Now()&lt;br /&gt;
* EPL_SEQUENCE	- LINK SEQ NO&lt;br /&gt;
* EPL_LINKED_ID	- As generated above&lt;br /&gt;
* EPL_LOADING_TYPE	- Blank&lt;br /&gt;
* EPL_ORDER_TIME	- defaulted to Now()		&lt;br /&gt;
* EPL_TRAVEL_PLANNED	- TRAVEL TIME TO NEXT CALL	From previous job&lt;br /&gt;
* EPL_WORK_PLANNED	- WORK TIME	&lt;br /&gt;
* EPL_LAT	- LATITUDE	from previous job&lt;br /&gt;
* EPL_LONG	- LONGITUDE	from previous job&lt;br /&gt;
* EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
* EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
&lt;br /&gt;
As per normal processing, a Customer should be created if one does not exist. A Job Address should be generated if the details of the address differ to that stored against the Customer Code, if one is found already stored.&lt;br /&gt;
&lt;br /&gt;
As each break job will have a different address to the standard BREAK customer address, a specific Job Address should be created for each Break job, storing:&lt;br /&gt;
* EPL_CUSTOMER_CODE	- &amp;quot;BREAK&amp;quot;&lt;br /&gt;
* EPL_NAME	- IDENT OF CALL OR DEPOT concatenated with CALLOVER SEQUENCE NUMBER&lt;br /&gt;
* EPL_ADDRESS_1	- IDENT OF CALL OR DEPOT concatenated with CALLOVER SEQUENCE NUMBER&lt;br /&gt;
* EPL_POSTCODE - EPL_POSTCODE from previous job&lt;br /&gt;
* EPL_LAT	- LATITUDE	from previous job&lt;br /&gt;
* EPL_LONG	- LONGITUDE	from previous job&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Post Job Processing ===&lt;br /&gt;
&lt;br /&gt;
When a job is created, the following items should be stored for potential use on the next job created:&lt;br /&gt;
* EPL_LOAD_ID	- From the found Load ID&lt;br /&gt;
* EPL_DISTANCE_PLANNED	- TRAVEL DISTANCE TO NEXT CALL&lt;br /&gt;
* EPL_TRAVEL_PLANNED	- TRAVEL TIME TO NEXT CALL&lt;br /&gt;
* EPL_LAT	- LATITUDE	&lt;br /&gt;
* EPL_LONG	- LONGITUDE	&lt;br /&gt;
* EPL_START_PLANNED_TIME	- EAT AT CALL - if earlier than the stored value&lt;br /&gt;
* EPL_END_PLANNED_DATE	- DEPARTURE DATE - if earlier than the stored value&lt;br /&gt;
* EPL_END_PLANNED_TIME	- EDT AT CALL - if earlier than the stored value&lt;br /&gt;
* EPL_LINKED_ID - as generated from CUSTOMER SEQ above.&lt;br /&gt;
* EPL_POSTCODE - as set on this job.&lt;br /&gt;
&lt;br /&gt;
A list of all Loads and Jobs processed in the file should be stored as each job is processed. This should store the Load IDs and Job IDs of the jobs created or updated.&lt;br /&gt;
&lt;br /&gt;
A list of all start planned dates in the file should be stored as each load is processed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Post Load Processing ===&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load have been processed, the process should loop through all jobs on that load that are not in the list of jobs processed. If any are found, these and all child records should be deleted. That is:&lt;br /&gt;
* EPOD_JOB&lt;br /&gt;
* EPOD_CONTAINER&lt;br /&gt;
* EPOD_PRODUCT&lt;br /&gt;
* EPOD_JOB_ADDRESS&lt;br /&gt;
* EPOD_TIME_WINDOW&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Load should only be updated at this time if the load being processed is different to the previous load processed in this run, or when no further records are pin the file being processed.&lt;br /&gt;
* EPL_LOAD_START_PLANNED_TIME	- Earliest start planned time of jobs on this load&lt;br /&gt;
* EPL_LOAD_END_PLANNED_DATE	TRUE	- Latest start planned date of jobs on this load&lt;br /&gt;
* EPL_LOAD_END_PLANNED_TIME	TRUE	- Latest start planned time of jobs on this load&lt;br /&gt;
* EPL_LAST_CHANGED_DATE - Now&lt;br /&gt;
* EPL_LAST_CHANGED_TIME - Now&lt;br /&gt;
&lt;br /&gt;
{{Note}} The new change ''FS 336013 SCR-332569-4 GK PvA Automatically Set Loads In Progress'' details changes required to automatically set loads in progress when they are the earliest load for that vehicle. These changes must be implemented at this stage.&lt;br /&gt;
&lt;br /&gt;
All previously stored values should be reset when the Load changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Post File Processing ===&lt;br /&gt;
Once all loads in the file are processed, all loads for the processed start planned dates should be retrieved, where the loads are not in the list of loads processed by this run. If any are found, these and all child records should be deleted. That is:&lt;br /&gt;
* EPOD_LOAD&lt;br /&gt;
* EPOD_JOB&lt;br /&gt;
* EPOD_PRODUCT&lt;br /&gt;
* EPOD_CONTAINER&lt;br /&gt;
* EPOD_JOB_ADDRESS&lt;br /&gt;
* EPOD_TIME_WINDOW&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: TEST PLAN  =&lt;br /&gt;
{{TestPlan_Header&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Log={{#var:Reference}}&lt;br /&gt;
|Description=Testing the DIPS-EPOD interface&lt;br /&gt;
|MenuAccess=N/A&lt;br /&gt;
|Prerequisites=N/A&lt;br /&gt;
|Objective=To test that: the interface can be created through Admin and; the interface creates and amends jobs correctly.&lt;br /&gt;
}} &lt;br /&gt;
{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Admin tests&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new DIPS interface in the XF Config screen&lt;br /&gt;
|Result=All fields are enter-able as described here. The new interface is created.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
{{TestPlan_CycleHeader&lt;br /&gt;
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}&lt;br /&gt;
|Title=Interface tests&lt;br /&gt;
|Notes=&lt;br /&gt;
}} &amp;lt;!--INSERT TESTS HERE --&amp;gt; {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new DIPS interface file as follows:&lt;br /&gt;
* At least 2 Loads, for different unknown vehicles and drivers.&lt;br /&gt;
* Multiple Jobs for each load, including a Depot Load and Unload job at the start and end&lt;br /&gt;
* At least one break per load.&lt;br /&gt;
* Multiple Deliverable Items and labels&lt;br /&gt;
* Some with job windows.&lt;br /&gt;
Upload the file.&lt;br /&gt;
|Result=All Loads are created. All Delivery Jobs are created correctly. All Windows are created correctly. All Customers are created. All Breaks are created. All Vehicles are created. All Load/Unload jobs are created correctly. The jobs are marked as In Progress and WEBFLEET orders are created.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new DIPS interface file similar to the first, with the following differences:&lt;br /&gt;
* All loads except 1 from the previous file.&lt;br /&gt;
* All jobs for the other loads bar 1 from the previous file.&lt;br /&gt;
* 1 Load and 1 Job with all details slightly changed.&lt;br /&gt;
* 1 new load, with the same vehicle as the previous file, but at an earlier date/time. The user should be very similar to a previous user, in that 1st letter of the first name and the surname are identical e.g. John Jones and Jack Jones. &lt;br /&gt;
|Result=The new Load and all jobs are created as before. All existing loads and jobs from before are updated. The new user will be created with a single-digit '1' after the user id. Any loads or jobs not included in the file are deleted, including all children.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_Test&lt;br /&gt;
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}&lt;br /&gt;
|Action=Create a new DIPS interface file similar to the second, with the following differences:&lt;br /&gt;
* Add 1 extra break into 1 load, in the middle, changing the link number on all following jobs.&lt;br /&gt;
* Add an additional Unload at Depot in the middle of another load, changing the link number on all following jobs.&lt;br /&gt;
|Result=Additional jobs should be created for the new Unload and Break jobs created. Break and Unload Job IDs should change based on the sequence (link number) of the job in the load. Prior Loading/Unloading/Break jobs should be deleted.&lt;br /&gt;
|Remarks=&lt;br /&gt;
|PassFail=&lt;br /&gt;
}} {{TestPlan_CycleFooter}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=Y&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=FS 336012 SCR-332569-3 GK PvA Add Time Windows&lt;br /&gt;
|RefV1=1.0&lt;br /&gt;
|RefDate1=16/06/2016&lt;br /&gt;
|Ref2=EPOD Import Mapping&lt;br /&gt;
|RefV2=5.1.2&lt;br /&gt;
|RefDate2=17/06/2016&lt;br /&gt;
|Ref3=EPOD Export Mapping&lt;br /&gt;
|RefV3=5.1.2&lt;br /&gt;
|RefDate3=17/06/2016&lt;br /&gt;
|Ref4=FS 336013 SCR-332569-4 GK PvA Automatically Set Loads In Progress&lt;br /&gt;
|RefV4=1.0&lt;br /&gt;
|RefDate4=16/06/2016&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=1.5&lt;br /&gt;
|TS=1.5&lt;br /&gt;
|DEV=6.75&lt;br /&gt;
|ST=1.25&lt;br /&gt;
|IMP=0&lt;br /&gt;
|PM=0.5&lt;br /&gt;
|Client={{#var:Client}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King Representative&lt;br /&gt;
|Rev2=Matt Tipping&lt;br /&gt;
|Rev2Title=OBSL Representative&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} FS]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_336598_Zenith_Back_Orders&amp;diff=3354</id>
		<title>EST 336598 Zenith Back Orders</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_336598_Zenith_Back_Orders&amp;diff=3354"/>
		<updated>2016-07-13T13:48:10Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Review and Issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Estimate_Head&lt;br /&gt;
|Client=ZEN&lt;br /&gt;
|Project=DEV&lt;br /&gt;
|Site=WHG&lt;br /&gt;
|ClientRef=N/A&lt;br /&gt;
|OBSRef=336598&lt;br /&gt;
|Version=1.0&lt;br /&gt;
|Author=A N Walker&lt;br /&gt;
|PONum=&amp;amp;nbsp;&lt;br /&gt;
|Priority=3&lt;br /&gt;
|Date=13/07/2016&lt;br /&gt;
|Customer=N/A&lt;br /&gt;
|SysVer=3.X&lt;br /&gt;
|ClientRequest='''Requirement 1:'''&lt;br /&gt;
&lt;br /&gt;
Back-order lines must be displayed on the POD note.&lt;br /&gt;
&lt;br /&gt;
'''Requirement 2:'''&lt;br /&gt;
&lt;br /&gt;
It is not always clear whether a product was not despatched or not delivered using the current POD format. This will be changed to display the Ordered, Despatched and Delivered quantities.&lt;br /&gt;
&lt;br /&gt;
|Solution={{Note}} All changes to the POD will be made to both the Priced and Unpriced formats.&lt;br /&gt;
&lt;br /&gt;
'''Requirement 1:'''&lt;br /&gt;
&lt;br /&gt;
Sage currently handles this requirement by adding product lines to an order, containing the free text describing the back order status.&lt;br /&gt;
&lt;br /&gt;
Sage will pass through additional product lines that have various levels of information&lt;br /&gt;
* Product Code - set if this is a back-order line for the product&lt;br /&gt;
* Description - the quantity back-ordered or the back-order reference, for example &amp;quot;Fully Back-Ordered for 1&amp;quot;, &amp;quot;** Back-order to follow : XXXXXXX/1 **&amp;quot;&lt;br /&gt;
* Status - set to &amp;quot;C&amp;quot; - Complete.&lt;br /&gt;
* Sequence - This will be set as the same sequence as the line to which it pertains (for back ordered quantities) or 9000, plus 1 for each new back order reference line, e.g. 9001, 9002, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Inbound webservice will be changed to allow the user to set a line to completed status - this will ensure that these lines are never prompted for the driver to deliver. The change to the webservice format (XSD) will be passed through to the Sage team for modification after sign-off of this change. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All product lines on the POD will be ordered by Sequence, ensuring that the new lines will always appear at the end. The sequence should ensure that the line displaying the ordered, despatched and delivered quantity appears first, then the line for the back-ordered qty. Any back-order references should appear at the end after all product and back-order lines.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Requirement 2:'''&lt;br /&gt;
&lt;br /&gt;
Sage will pass through the Ordered values for each product line.&lt;br /&gt;
&lt;br /&gt;
A &amp;quot;QTY DESP&amp;quot; column will be added after the existing column &amp;quot;QTY ORD&amp;quot;. This will be populated from the planned quantities.&lt;br /&gt;
&lt;br /&gt;
The existing &amp;quot;QTY ORD&amp;quot; column will be changed so that this is populated from the Ordered quantities.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The changes for both requirements will result with c change to the product table on the POD form as per the following example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;2&amp;quot;&amp;gt;'''PRODUCT&amp;lt;br/&amp;gt;CODE'''&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;2&amp;quot;&amp;gt;'''PRODUCT&amp;amp;nbsp;DESCRIPTION'''&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;2&amp;quot;&amp;gt;'''QTY&amp;lt;br/&amp;gt;ORD'''&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;2&amp;quot;&amp;gt;'''QTY&amp;lt;br/&amp;gt;DESP'''&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;2&amp;quot;&amp;gt;'''QTY&amp;lt;br/&amp;gt;DEL'''&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;WG 011000 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; HARD WATER M/C DETERGENT &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;WG 100900 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; ULTRA FLOOR CLEANER &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 6 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 3&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;WG 100900 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; Fully Back-ordered for 2 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;WG 020500 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; PEBBLE SALT &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;WG 121700S &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; CLOTHS ALL PURPOSE BLUE &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;190700 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; WINDOW SQUEEGEE 14&amp;quot; WITH HANDLE &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;190700 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; Fully Back-ordered for 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; ** Back-order to follow : XXXXXXX/1 ** &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 0&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All other elements of the POD reports, including all other elements on the Product table, will remain unchanged.&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{EstimateCostDetails&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0.0&lt;br /&gt;
|FS=0.5&lt;br /&gt;
|TS=0.75&lt;br /&gt;
|DEV=2.25&lt;br /&gt;
|ST=0.5&lt;br /&gt;
|IMP=0.25&lt;br /&gt;
|PM=0.25&lt;br /&gt;
|Client=ZEN&lt;br /&gt;
|Year=2016&lt;br /&gt;
|FOC=N&lt;br /&gt;
|NOFOOTER=Y&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
Copyright © OBS Logistics 2016.&amp;lt;br /&amp;gt;&lt;br /&gt;
This estimate has an expiry date of 30 days from the specified Estimate Date.&amp;lt;br /&amp;gt;&lt;br /&gt;
The information contained herein is supplied without liability for errors or omissions.&lt;br /&gt;
&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
[[Category:ZEN EST]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3087</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3087"/>
		<updated>2016-04-27T14:04:10Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v2.0 - Issue to Zenith Hygiene&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|2.00}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope Requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following changes are out of scope and can be reinstated at a later date at additional cost&lt;br /&gt;
&lt;br /&gt;
==''' SCR-5-330814: Timer to prevent vehicle check completion''' ==&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''SCR-330814-7 Postpone Job with Reason Code''' ==&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==''' SCR-330814-13: Re-key Email/Contact/Tel at Signature''' ==&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''SCR-330814-2: Customer Tracking Gateway''' ==&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Out Of Scope SCR List''' ==&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3086</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3086"/>
		<updated>2016-04-27T14:02:02Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope Requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following changes are out of scope and can be reinstated at a later date at additional cost&lt;br /&gt;
&lt;br /&gt;
==''' SCR-5-330814: Timer to prevent vehicle check completion''' ==&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''SCR-330814-7 Postpone Job with Reason Code''' ==&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==''' SCR-330814-13: Re-key Email/Contact/Tel at Signature''' ==&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''SCR-330814-2: Customer Tracking Gateway''' ==&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Out Of Scope SCR List''' ==&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3085</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3085"/>
		<updated>2016-04-27T13:57:54Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope Requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following changes are out of scope and can be reinstated at a later date at additional cost&lt;br /&gt;
&lt;br /&gt;
===SCR-5-330814: Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-7 Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-13: Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-2: Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Out Of Scope SCR List''' ==&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3084</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3084"/>
		<updated>2016-04-27T13:55:51Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope Requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following changes are out of scope and can be reinstated at a later date at additional cost&lt;br /&gt;
&lt;br /&gt;
===SCR-5-330814: Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-7 Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-13: Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-2: Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3083</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3083"/>
		<updated>2016-04-27T13:54:06Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope Requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following changes are out of scope and can be reinstated at a later date at additional cost&lt;br /&gt;
&lt;br /&gt;
===SCR-5-330814: Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-7 Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-13: Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-2: Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3082</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3082"/>
		<updated>2016-04-27T13:48:41Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope Requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following changes are out of scope and can be reinstated at a later date at additional cost&lt;br /&gt;
&lt;br /&gt;
===SCR-5-330814: Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-7 Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-13: Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-2: Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3081</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3081"/>
		<updated>2016-04-27T13:43:11Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCR-5-330814: Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-7 Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-13: Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-2: Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=John Hitchmough&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3079</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3079"/>
		<updated>2016-04-27T13:41:22Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCR-5-330814: Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-7 Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-13: Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
==SCR-330814-14 Allow Admin to set a load in progress ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SCR-330814-2: Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3078</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3078"/>
		<updated>2016-04-27T13:24:19Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith requirement to upload paper POD documents from couriers into the system, these are to be displayed on the Portal in the same way as the ePOD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3077</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3077"/>
		<updated>2016-04-27T13:13:06Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3076</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3076"/>
		<updated>2016-04-27T13:06:29Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes are out of scope for this project:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
Further details of these requirements are in Appendix A. These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to give the drivers the ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3075</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3075"/>
		<updated>2016-04-27T12:55:16Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Your order will arrive on 27/04/16&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3074</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=3074"/>
		<updated>2016-04-27T12:53:39Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.1 - Update following customer meeting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.1}}&lt;br /&gt;
{{#vardefine:Date|27th April 2016}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* SCR-330814-8: Multiple Time Windows &lt;br /&gt;
* SCR-330814-5: Timer to prevent Vehicle Check Completion&lt;br /&gt;
* SCR-330814-7: Postpone Job with Reason Code&lt;br /&gt;
* SCR-330814-13: Re-key Email/Contact/Tel at signature&lt;br /&gt;
* SCR-330814-14: Allow Admin to set a load in progress&lt;br /&gt;
&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
A requirement is to send an email to the customer on receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Your order will arrive on 27/04/16&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. &lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Out of Scope requirements =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Timer to prevent vehicle check completion ===&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Postpone Job with Reason Code ===&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Re-key Email/Contact/Tel at Signature===&lt;br /&gt;
A job completion the signature screen will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix B: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=C&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2807</id>
		<title>REQ 332569 Greene King PvA</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2807"/>
		<updated>2016-02-02T13:27:03Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 Issue to Greene King&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|TomTom WEBFLEET Planned Vs Actual Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.0}}&lt;br /&gt;
{{#vardefine:Date|2nd February 2016}}&lt;br /&gt;
{{#vardefine:Reference|332569}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}} from various sales meetings.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
* Time Windows will be included as part of this project. However, the changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time may be added part of the full solution defined in that project.&lt;br /&gt;
* It is noted that multiple Time Windows are not supported in Aurora at this time. It is hoped that the changes specified within this document will be suitable to support this future requirement. However, if changes to Aurora require modifications to the application to support this, this will generate additional cost.&lt;br /&gt;
* Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
* The processing of jobs on the TomTom WEBFLEET devices is subject to configuration on the device and the fleet within WEBFLEET. Actual data gathered from TomTom WEBFLEET relies on the accurate use of the in-cab TomTom navigation unit, for example, the arrival button must be pressed on arrival to the destination. Incorrect configuration or use of this application will mean that the solution will not work as expected. For the solution to work as expected, this must include:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** Order Completion.&lt;br /&gt;
* The TomTom WEBFLEET application process above is as required for the stand-alone implementation of Planned Vs Actuals and TomTom WEBFLEET. When/if ''CALIDUS'' ePOD is implemented for the customer, this process is likely to be modified to simplify the process:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Completion used for Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** The ''CALIDUS'' ePOD application would then handle Order Completion times&lt;br /&gt;
* The Unique Load ID is assumed to be the Callover Sequence Number from DiPS, as this is the only depot-unique number available. Note that the Route Code is stored as part of this solution, but for reference and reporting only.&lt;br /&gt;
*	Planned Break jobs are part of this solution. DiPS can provide a planned driver break on the inbound file, and this will be in between of the execution or orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. If additional development is required regarding processing of break jobs within TomTom WEBFLEET, or the use of these jobs if utilising the full ''CALIDUS'' ePOD solution, this will generate additional cost and will be identified in the full ''CALIDUS'' ePOD solution if required.&lt;br /&gt;
* There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining the information from DiPS them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right of the Planned Vs Actual Report will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* It is not expected that ''CALIDUS'' Portal TTM will be in use with this system stand-alone, but that this will require the full ''CALIDUS'' ePOD solution to be implemented. &lt;br /&gt;
* The implemented system will not be capable of being used with the ''CALIDUS'' ePOD mobile device application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
*	Export of routes in drop order by DiPS&lt;br /&gt;
*	Import of routes into TomTom WEBFLEET&lt;br /&gt;
*	Export of planned vs. actual reporting&lt;br /&gt;
*	Operation of planned solution will be at individual depot level&lt;br /&gt;
&lt;br /&gt;
Additional request from 09/10/2015:&lt;br /&gt;
*	To ensure the drivers are clicking arrive at the correct location can we use the lat/long information sent back from TomTom to display on a map where the driver was at that point in time? If budget does not allow, can we just store the lat/long so Greene king can manually determine the location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Overview of Solution ==&lt;br /&gt;
*	Export of routes in drop order by DiPS.&lt;br /&gt;
*	Import of routes via C.S.V into ''CALIDUS'' ePOD. &lt;br /&gt;
*	Export of routes and jobs to TomTom WEBFLEET.&lt;br /&gt;
*	Import of completed jobs from TomTom WEBFLEET.&lt;br /&gt;
*	Export of planned vs. actual reporting in Excel format&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Process_Flow.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Cross-functional Process Flow''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Export Planned Routes From DiPS ==&lt;br /&gt;
{{Note}} The details of the integration from DiPS are subject to an integration meeting, to be scheduled. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-EPOD Integration Meeting.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Initial Run ===&lt;br /&gt;
Orders will be exported from Aurora into DiPS for route planning. DiPS is a route optimisation tool which optimises the drops in to the optimum route. When planned within DiPS, the routed orders with load details will be exported back into Aurora, through an existing interface, consisting of only limited details. At this time, DiPS will also generate a new fully-populated CSV for import into ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
The file will be generated from DiPS in mid-afternoon for the following day - they will then be finalised and sent through to TomTom.&lt;br /&gt;
&lt;br /&gt;
The file will contain all fields that can be exported from DiPS, to minimise any additional work required for any future requirements.&lt;br /&gt;
&lt;br /&gt;
The file will contain all routes for individual depot, or all routes for all depots. Routes must be assigned to a vehicle &amp;amp; driver. Routes must contain postcodes and/or valid Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
An example full file export has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
This file will be generated to a local or network folder, accessible by ''CALIDUS'' ePOD - this can be through an FTP account or file sharing. It will be expected to be named uniquely, as a variant of DIPS2AXS.TXT. Note that the name must either be unique per export, or unique per depot, or created as a different name then renamed for ''CALIDUS'' ePOD to pick up, to prevent partial uploading of the file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' ePOD will be modified to automatically import the file through a process triggered to run every few minutes. This will be a bespoke process written specifically for this purpose.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-ePOD Interface for Load and Order Sequencing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will process the file and create Loads and Jobs from the information provided.&lt;br /&gt;
&lt;br /&gt;
The first depot job on a load will be marked as a loading job, and all subsequent depot jobs on a load will be marked as an unloading job. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;LOA&amp;quot; or &amp;quot;UNL&amp;quot; and the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
Break jobs on a load will be generated as a normal job with customer 'BREAK'. They will be given a job address based on the BREAK customer, but with a Lat/Long set as the last job processed on the load. The instructions will be the break length. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;BRK&amp;quot;, plus the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} DiPS can provide a planned driver break on the inbound file, in between of the execution of orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
No functionality is included here to make Break jobs visible within ''CALIDUS'' ePOD specifically as Break job types or to handle them differently to collections or deliveries on the mobile device. If the full ''CALIDUS'' ePOD solution is put in place, a further change will be undertaken there to handle break jobs on the Android device and within the general administration screens. This will be added as a change in the Greene King ''CALIDUS'' ePOD solution design document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Load created will be stored in the normal tables within ''CALIDUS'' ePOD, with additional fields created for the new planned data.&lt;br /&gt;
&lt;br /&gt;
The process will generate the following standard ''CALIDUS'' ePOD tables:&lt;br /&gt;
* EPOD_LOAD - each unique load will be created, within the Site (Depot) owning the load.&lt;br /&gt;
* EPOD_JOB - a unique job will be created for the order on the load specified.&lt;br /&gt;
* EPOD_CUSTOMER - A customer record will be automatically created if one does not already exist, including the Lat/Long of the address.&lt;br /&gt;
* EPOD_JOB_ADDRESS - if the customer record exists, but the address or information on it differs to the information on the job, an Address will be created specifically for the job.&lt;br /&gt;
* EPOD_VEHICLE - A vehicle record will be automatically created for vehicle assigned to the load, based on the Vehicle Registration, if one does not already exist. {{Note}} Vehicles created automatically in this way will not have a TomTom ID (Object ID) assigned to them, meaning that loads for vehicles automatically generated in this way will NOT be automatically sent to TomTom until this is completed.&lt;br /&gt;
* EPOD_USER - a driver record will be automatically created based on the driver name received from DiPS. This driver ID will be generated from the driver name, and provided a generic password. {{Note}} Although not part of this project, these automatically created drivers may then be used on ''CALIDUS'' ePOD devices to complete the jobs. This will be disabled until ''CALIDUS'' ePOD is implemented.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following assumptions are made regarding the data that ''CALIDUS'' ePOD will use:&lt;br /&gt;
* Load&lt;br /&gt;
** Site - the depot, from CALLS OWNING DEPOT&lt;br /&gt;
** Load ID - from CALLOVER SEQUENCE NO. {{Note}} This load ID '''must''' be unique for every load ever created for a depot.&lt;br /&gt;
** Load Planned Start/End times - from the individual jobs on the load.&lt;br /&gt;
** Vehicle ID - generated from VEHICLE IDENT&lt;br /&gt;
** User ID - generated from DRIVER'S NAME OR CARRIER&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Route Code - TRIP LABEL&lt;br /&gt;
* Job&lt;br /&gt;
** Job Code (the main reference) - ORDER OR SHIPMENT ID. {{Note}} This reference '''must''' be unique for for the order on the load (it can appear as a collection and a delivery if required).&lt;br /&gt;
** Job Type - These will be identified as Delivery jobs only, regardless of whether they are collections or deliveries within DiPS. If functionality is added between Aurora and DiPS to identify collections to DiPS, this may generate additional development. As this would only affect the full ''CALIDUS'' ePOD solution (if implemented), this will be added as change to that project. &lt;br /&gt;
** Job Group (the main configuration of the execution of the jobs) - based on the job type, hard-coded. For Loading, Unloading and Break jobs, a different job group will be used to Collections and Deliveries.&lt;br /&gt;
** Job Instructions - a concatenation of the weights/quantities, or ORDER SPECIAL DELIVERY INST&lt;br /&gt;
** Planned Start Date/Time (Planned Arrival) - OPENING TIME 1&lt;br /&gt;
** Planned End Date/Time - CLOSING TIME 1&lt;br /&gt;
** Planned Distance - TRAVEL DISTANCE TO NEXT CALL from previous job on this load&lt;br /&gt;
** Customer Code - IDENT OF CALL OR DEPOT&lt;br /&gt;
** Customer Details, from:&lt;br /&gt;
*** Name - ADDRESS LINE 1&lt;br /&gt;
*** Address - ADDRESS LINE 2/3/4/5/POSTCODE&lt;br /&gt;
*** Telephone - TELEPHONE NUMBER&lt;br /&gt;
** Sequence on Job List - LINK SEQ NO&lt;br /&gt;
** Loading Type - For Depot jobs.&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Planned Travel Time (Minutes) - TRAVEL TIME TO NEXT CALL from the previous job&lt;br /&gt;
*** Planned Work Time (Minutes) - WORK TIME&lt;br /&gt;
*** ETA Date and Time - For TomTom WEBFLEET integration&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to support the functionality required within the Planned Vs Actual report regarding time windows, the application will be modified to store the time windows information from the DiPS interface.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Add Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
These will be added as new table, at Job level, to account for potential multiple time windows. The data is assumed to be taken from OPENING/CLOSING TIME 2 at this time. There is no way of identifying or specifying multiple delivery windows or customer delivery windows in the way that Aurora and DiPS plan jobs at this time. A customer is expected to always have a delivery window configured against it, and that it may change (by configuration) for each day of the week if required. Although this change will be made capable of storing multiple time windows against a job or against a customer, the interface here will ''only'' create job windows, and only one of them per job. Should Aurora and DiPS (or the interface between them) be modified to support multiple windows, or there is a product requirement to add multiple customer windows, this will generate additional cost. It is not expected that this will be required at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time will be added part of the full solution defined in that project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Update Run ===&lt;br /&gt;
&lt;br /&gt;
Additional orders, cancellation of orders and changes to orders already received throughout the day will necessitate changes to the plan. Aurora and DiPS will follow the same process to send orders across to DiPS and route plan them. When exported from DiPS, the same import file will be created for all of the orders and loads.&lt;br /&gt;
&lt;br /&gt;
When uploading files with orders and loads that have already been created, the process will update any existing Loads and Orders with the information from the new import file.&lt;br /&gt;
&lt;br /&gt;
When all imports are completed for a load, the process will check if any orders already on the load were not included in the new upload. If orders are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
When all load imports are completed, the process will check if any loads already in the system for that date were not included in the new upload file. If loads are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Exporting Data to TomTom WEBFLEET ==&lt;br /&gt;
Once the DiPS import is complete, the drivers will require the ability to execute the jobs through TomTom WEBFLEET. In order to achieve that, CALIDUS ePOD must generate the orders on to TomTom WEBFLEET. A process already exists to complete that, when loads are set to In Progress. The setting of loads to this status is normally achieved through the ''CALIDUS'' ePOD devices requesting a load. As ''CALIDUS'' ePOD will not be in use at this time, a process will be required to automatically set the status of the earliest loads for a vehicle to In Progress.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD Process to automatically set Load In Progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This process will be a timed process, running every few minutes, after the DiPS Import has completed, but before any messages are sent to TomTom WEBFLEET. The process will be capable of being configured by Site (Depot). Any loads at status In Progress or Pending will be checked and the earliest load for that vehicle will be marked in progress. This will then automatically trigger a requirement to send this load to TomTom WEBFLEET. If there was already a load in progress for the vehicle, this load will be changed back to Pending and TomTom WEBFLEET will be informed to remove any jobs associated to this load from the worklist.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only vehicles configured with a TomTom External ID within ''CALIDUS'' ePOD will have orders sent to them.&lt;br /&gt;
* Only jobs that are not yet complete will be sent to TomTom WEBFLEET.&lt;br /&gt;
* Only Loads In Progress will be sent to TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs will be sent through as follows:&lt;br /&gt;
* Order No - Site (Depot) and Job ID. {{Note}}This is a unique ID for the job for TomTom purposes and is not the customer's reference.&lt;br /&gt;
* Object - Vehicle External Reference&lt;br /&gt;
* Date/Time - Planned Date/Time, plus a quarter-hour tolerance&lt;br /&gt;
* Lat/Long - from the customer or the address&lt;br /&gt;
* Order Type - Collection or Delivery&lt;br /&gt;
* Job Instructions&lt;br /&gt;
* Address line 1, Postcode and Country&lt;br /&gt;
* Contact information&lt;br /&gt;
&lt;br /&gt;
Some slight modifications to the way that data is sent to TomTom WEBFLEET for orders will be undertaken, as part of the product:&lt;br /&gt;
* Job Instructions will include the order reference to be displayed.&lt;br /&gt;
* The Planned Date and Time will be amended to be the Expected Arrival Date and Time (Planned Start Date/Time within ''CALIDUS'' ePOD).&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-WEBFLEET Interface Modifications.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Completing Jobs on TomTom WEBFLEET ==&lt;br /&gt;
Once work has been sent to a TomTom vehicle, these orders are visible within TomTom WEBFLEET and the driver can log on to the TomTom WEBFLEET application and see the list of jobs.&lt;br /&gt;
&lt;br /&gt;
The process of completing jobs on the WEBFLEET application depends on the fleet and/or device configuration, but is expected to be:&lt;br /&gt;
* An orders list is displayed, showing all the orders to be completed.&lt;br /&gt;
* Select the first job to view the instructions and information.&lt;br /&gt;
* Start the Job through the button provided.&lt;br /&gt;
* Navigate to the job using the TomTom routing provided.&lt;br /&gt;
* Arrive the Job through the button provided.&lt;br /&gt;
* Complete the Job through the button provided.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Capturing Completed Jobs Information ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into ''CALIDUS'' ePOD and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing ''CALIDUS'' ePOD User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Planned Vs Actual Reporting ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Removed as not required&lt;br /&gt;
If configured, the system will immediately show this screen with the report selected after the user has logged on to the system.&lt;br /&gt;
&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from two places in the ''CALIDUS'' ePOD Admin system:&lt;br /&gt;
* The ''Home'' screen (if the system is configured for this). &lt;br /&gt;
* The ''Reports'' screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Home.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Home Screen, where the report parameters will be.''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Planned Vs Actual Report.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The report is expected to be run daily.&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots for that customer.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default value).&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default value).&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default value). &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report, and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only completed or cancelled jobs will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** If a parameter is left as All Values, this will not appear in the name, with the exception of Depot and Date Range.&lt;br /&gt;
&lt;br /&gt;
Depending on browser settings, this may either offer to save the report immediately, or open immediately in the browser. If opened in the browser, the report may be saved locally.&lt;br /&gt;
&lt;br /&gt;
An example report has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders&lt;br /&gt;
* All titles and summary lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced.&lt;br /&gt;
*	Work time is defined as the time in between arriving at a location and departing a location. The working time consists of loading/unloading and paperwork&lt;br /&gt;
*	Travel time is defined as the time in between the start and arrive times stored against a job, either travelling on Collections/Deliveries or travel to/from the depot.&lt;br /&gt;
* Route displayed on the reports will be the new Route field added to the load, if this is not blank, otherwise this will be the default Load ID.&lt;br /&gt;
* Date displayed on the report will be the Planned End Date, when the delivery should be completed.&lt;br /&gt;
* Data on the report will be primarily sorted by Planned End Date, Vehicle Reg and Route, then any additional data specific to that tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the sum of the planned values against the jobs on the load.&lt;br /&gt;
* Actual - the sum of the actual values against the jobs on the load.&lt;br /&gt;
* Var - the planned summed value minus the actual summed value.&lt;br /&gt;
* % Var - the summed variance divided by the summed planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes).&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the planned values against the job.&lt;br /&gt;
* Actual - the actual values against the job.&lt;br /&gt;
* Var - the planned value minus the actual value.&lt;br /&gt;
* % Var - the variance divided by the planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
Breaks and Depot (Loading/Unloading) jobs will not include account number and postcode.&lt;br /&gt;
&lt;br /&gt;
Loading jobs will not include Distance or Travel Time variances.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance.&lt;br /&gt;
&lt;br /&gt;
The report will summarise at Load (route) and will display:&lt;br /&gt;
* No. Planned - a sum of the number of collection or delivery jobs on the load.&lt;br /&gt;
* No. Achieved - a sum of the number of collection or delivery jobs on the load where the actual arrival time is within the window.&lt;br /&gt;
* Var - No. Planned minus No. Achieved.&lt;br /&gt;
* % Var - No. Achieved divided by No. Planned, expressed as a percentage, rounded up. {{Note}} This is not the percentage variance, this is the percentage compliance. The column title will be labelled as '% Comp' rather than '% Var' to reflect this.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) or the planned arrival time, otherwise red background.&lt;br /&gt;
* Achieved Time Window - Yes or, depending if the arrival time is within the time window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Arrival Time - the actual Arrival Time.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there's only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-EPOD Integration Meeting.|Estimate=1|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-ePOD Interface for Load and Order Sequencing.|Estimate=11.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Add Time Windows.|Estimate=4.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD Process to automatically set Load In Progress.|Estimate=2.75|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD-WEBFLEET Interface Modifications.|Estimate=1.00|Notes=3&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=WEBFLEET-ePOD Job Update Interface.|Estimate=7.25|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Update non-working time as a new break.|Estimate=4.25|Notes=4&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Admin|Description=Display location of TomTom Order Arrival.|Estimate=1.25|Notes=2&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD/DiPS|Area=Reports|Description=Planned Vs Actual Report.|Estimate=11.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
# Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
# These changes are optional at extra cost&lt;br /&gt;
# This change is a product modification and at OBS cost&lt;br /&gt;
# This change is at additional cost&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=obs-eas-DIPS2AXS.xls&lt;br /&gt;
|RefV1=N/A&lt;br /&gt;
|RefDate1=13/12/2013&lt;br /&gt;
|Ref2=Tom Tom Reports.xlsx&lt;br /&gt;
|RefV2=N/A&lt;br /&gt;
|RefDate2=5/3/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics Product Manager&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2800</id>
		<title>REQ 332569 Greene King PvA</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2800"/>
		<updated>2016-01-31T11:59:50Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v0.5 - Update following review&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|TomTom WEBFLEET Planned Vs Actual Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.5}}&lt;br /&gt;
{{#vardefine:Date|31st January 2016}}&lt;br /&gt;
{{#vardefine:Reference|332569}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}} from various sales meetings.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
* Time Windows will be included as part of this project. However, the changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time may be added part of the full solution defined in that project.&lt;br /&gt;
* It is noted that multiple Time Windows are not supported in Aurora at this time. It is hoped that the changes specified within this document will be suitable to support this future requirement. However, if changes to Aurora require modifications to the application to support this, this will generate additional cost.&lt;br /&gt;
* Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
* The processing of jobs on the TomTom WEBFLEET devices is subject to configuration on the device and the fleet within WEBFLEET. Actual data gathered from TomTom WEBFLEET relies on the accurate use of the in-cab TomTom navigation unit, for example, the arrival button must be pressed on arrival to the destination. Incorrect configuration or use of this application will mean that the solution will not work as expected. For the solution to work as expected, this must include:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** Order Completion.&lt;br /&gt;
* The TomTom WEBFLEET application process above is as required for the stand-alone implementation of Planned Vs Actuals and TomTom WEBFLEET. When/if ''CALIDUS'' ePOD is implemented for the customer, this process is likely to be modified to simplify the process:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Completion used for Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** The ''CALIDUS'' ePOD application would then handle Order Completion times&lt;br /&gt;
* The Unique Load ID is assumed to be the Callover Sequence Number from DiPS, as this is the only depot-unique number available. Note that the Route Code is stored as part of this solution, but for reference and reporting only.&lt;br /&gt;
*	Planned Break jobs are part of this solution. DiPS can provide a planned driver break on the inbound file, and this will be in between of the execution or orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. If additional development is required regarding processing of break jobs within TomTom WEBFLEET, or the use of these jobs if utilising the full ''CALIDUS'' ePOD solution, this will generate additional cost and will be identified in the full ''CALIDUS'' ePOD solution if required.&lt;br /&gt;
* There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining the information from DiPS them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right of the Planned Vs Actual Report will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* It is not expected that ''CALIDUS'' Portal TTM will be in use with this system stand-alone, but that this will require the full ''CALIDUS'' ePOD solution to be implemented. &lt;br /&gt;
* The implemented system will not be capable of being used with the ''CALIDUS'' ePOD mobile device application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
*	Export of routes in drop order by DiPS&lt;br /&gt;
*	Import of routes into TomTom WEBFLEET&lt;br /&gt;
*	Export of planned vs. actual reporting&lt;br /&gt;
*	Operation of planned solution will be at individual depot level&lt;br /&gt;
&lt;br /&gt;
Additional request from 09/10/2015:&lt;br /&gt;
*	To ensure the drivers are clicking arrive at the correct location can we use the lat/long information sent back from TomTom to display on a map where the driver was at that point in time? If budget does not allow, can we just store the lat/long so Greene king can manually determine the location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Overview of Solution ==&lt;br /&gt;
*	Export of routes in drop order by DiPS.&lt;br /&gt;
*	Import of routes via C.S.V into ''CALIDUS'' ePOD. &lt;br /&gt;
*	Export of routes and jobs to TomTom WEBFLEET.&lt;br /&gt;
*	Import of completed jobs from TomTom WEBFLEET.&lt;br /&gt;
*	Export of planned vs. actual reporting in Excel format&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Process_Flow.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Cross-functional Process Flow''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Export Planned Routes From DiPS ==&lt;br /&gt;
{{Note}} The details of the integration from DiPS are subject to an integration meeting, to be scheduled. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-EPOD Integration Meeting.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Initial Run ===&lt;br /&gt;
Orders will be exported from Aurora into DiPS for route planning. DiPS is a route optimisation tool which optimises the drops in to the optimum route. When planned within DiPS, the routed orders with load details will be exported back into Aurora, through an existing interface, consisting of only limited details. At this time, DiPS will also generate a new fully-populated CSV for import into ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
The file will be generated from DiPS in mid-afternoon for the following day - they will then be finalised and sent through to TomTom.&lt;br /&gt;
&lt;br /&gt;
The file will contain all fields that can be exported from DiPS, to minimise any additional work required for any future requirements.&lt;br /&gt;
&lt;br /&gt;
The file will contain all routes for individual depot, or all routes for all depots. Routes must be assigned to a vehicle &amp;amp; driver. Routes must contain postcodes and/or valid Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
An example full file export has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
This file will be generated to a local or network folder, accessible by ''CALIDUS'' ePOD - this can be through an FTP account or file sharing. It will be expected to be named uniquely, as a variant of DIPS2AXS.TXT. Note that the name must either be unique per export, or unique per depot, or created as a different name then renamed for ''CALIDUS'' ePOD to pick up, to prevent partial uploading of the file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' ePOD will be modified to automatically import the file through a process triggered to run every few minutes. This will be a bespoke process written specifically for this purpose.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-ePOD Interface for Load and Order Sequencing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will process the file and create Loads and Jobs from the information provided.&lt;br /&gt;
&lt;br /&gt;
The first depot job on a load will be marked as a loading job, and all subsequent depot jobs on a load will be marked as an unloading job. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;LOA&amp;quot; or &amp;quot;UNL&amp;quot; and the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
Break jobs on a load will be generated as a normal job with customer 'BREAK'. They will be given a job address based on the BREAK customer, but with a Lat/Long set as the last job processed on the load. The instructions will be the break length. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;BRK&amp;quot;, plus the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} DiPS can provide a planned driver break on the inbound file, in between of the execution of orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
No functionality is included here to make Break jobs visible within ''CALIDUS'' ePOD specifically as Break job types or to handle them differently to collections or deliveries on the mobile device. If the full ''CALIDUS'' ePOD solution is put in place, a further change will be undertaken there to handle break jobs on the Android device and within the general administration screens. This will be added as a change in the Greene King ''CALIDUS'' ePOD solution design document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Load created will be stored in the normal tables within ''CALIDUS'' ePOD, with additional fields created for the new planned data.&lt;br /&gt;
&lt;br /&gt;
The process will generate the following standard ''CALIDUS'' ePOD tables:&lt;br /&gt;
* EPOD_LOAD - each unique load will be created, within the Site (Depot) owning the load.&lt;br /&gt;
* EPOD_JOB - a unique job will be created for the order on the load specified.&lt;br /&gt;
* EPOD_CUSTOMER - A customer record will be automatically created if one does not already exist, including the Lat/Long of the address.&lt;br /&gt;
* EPOD_JOB_ADDRESS - if the customer record exists, but the address or information on it differs to the information on the job, an Address will be created specifically for the job.&lt;br /&gt;
* EPOD_VEHICLE - A vehicle record will be automatically created for vehicle assigned to the load, based on the Vehicle Registration, if one does not already exist. {{Note}} Vehicles created automatically in this way will not have a TomTom ID (Object ID) assigned to them, meaning that loads for vehicles automatically generated in this way will NOT be automatically sent to TomTom until this is completed.&lt;br /&gt;
* EPOD_USER - a driver record will be automatically created based on the driver name received from DiPS. This driver ID will be generated from the driver name, and provided a generic password. {{Note}} Although not part of this project, these automatically created drivers may then be used on ''CALIDUS'' ePOD devices to complete the jobs. This will be disabled until ''CALIDUS'' ePOD is implemented.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following assumptions are made regarding the data that ''CALIDUS'' ePOD will use:&lt;br /&gt;
* Load&lt;br /&gt;
** Site - the depot, from CALLS OWNING DEPOT&lt;br /&gt;
** Load ID - from CALLOVER SEQUENCE NO. {{Note}} This load ID '''must''' be unique for every load ever created for a depot.&lt;br /&gt;
** Load Planned Start/End times - from the individual jobs on the load.&lt;br /&gt;
** Vehicle ID - generated from VEHICLE IDENT&lt;br /&gt;
** User ID - generated from DRIVER'S NAME OR CARRIER&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Route Code - TRIP LABEL&lt;br /&gt;
* Job&lt;br /&gt;
** Job Code (the main reference) - ORDER OR SHIPMENT ID. {{Note}} This reference '''must''' be unique for for the order on the load (it can appear as a collection and a delivery if required).&lt;br /&gt;
** Job Type - These will be identified as Delivery jobs only, regardless of whether they are collections or deliveries within DiPS. If functionality is added between Aurora and DiPS to identify collections to DiPS, this may generate additional development. As this would only affect the full ''CALIDUS'' ePOD solution (if implemented), this will be added as change to that project. &lt;br /&gt;
** Job Group (the main configuration of the execution of the jobs) - based on the job type, hard-coded. For Loading, Unloading and Break jobs, a different job group will be used to Collections and Deliveries.&lt;br /&gt;
** Job Instructions - a concatenation of the weights/quantities, or ORDER SPECIAL DELIVERY INST&lt;br /&gt;
** Planned Start Date/Time (Planned Arrival) - OPENING TIME 1&lt;br /&gt;
** Planned End Date/Time - CLOSING TIME 1&lt;br /&gt;
** Planned Distance - TRAVEL DISTANCE TO NEXT CALL from previous job on this load&lt;br /&gt;
** Customer Code - IDENT OF CALL OR DEPOT&lt;br /&gt;
** Customer Details, from:&lt;br /&gt;
*** Name - ADDRESS LINE 1&lt;br /&gt;
*** Address - ADDRESS LINE 2/3/4/5/POSTCODE&lt;br /&gt;
*** Telephone - TELEPHONE NUMBER&lt;br /&gt;
** Sequence on Job List - LINK SEQ NO&lt;br /&gt;
** Loading Type - For Depot jobs.&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Planned Travel Time (Minutes) - TRAVEL TIME TO NEXT CALL from the previous job&lt;br /&gt;
*** Planned Work Time (Minutes) - WORK TIME&lt;br /&gt;
*** ETA Date and Time - For TomTom WEBFLEET integration&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to support the functionality required within the Planned Vs Actual report regarding time windows, the application will be modified to store the time windows information from the DiPS interface.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Add Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
These will be added as new table, at Job level, to account for potential multiple time windows. The data is assumed to be taken from OPENING/CLOSING TIME 2 at this time. There is no way of identifying or specifying multiple delivery windows or customer delivery windows in the way that Aurora and DiPS plan jobs at this time. A customer is expected to always have a delivery window configured against it, and that it may change (by configuration) for each day of the week if required. Although this change will be made capable of storing multiple time windows against a job or against a customer, the interface here will ''only'' create job windows, and only one of them per job. Should Aurora and DiPS (or the interface between them) be modified to support multiple windows, or there is a product requirement to add multiple customer windows, this will generate additional cost. It is not expected that this will be required at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time will be added part of the full solution defined in that project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Update Run ===&lt;br /&gt;
&lt;br /&gt;
Additional orders, cancellation of orders and changes to orders already received throughout the day will necessitate changes to the plan. Aurora and DiPS will follow the same process to send orders across to DiPS and route plan them. When exported from DiPS, the same import file will be created for all of the orders and loads.&lt;br /&gt;
&lt;br /&gt;
When uploading files with orders and loads that have already been created, the process will update any existing Loads and Orders with the information from the new import file.&lt;br /&gt;
&lt;br /&gt;
When all imports are completed for a load, the process will check if any orders already on the load were not included in the new upload. If orders are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
When all load imports are completed, the process will check if any loads already in the system for that date were not included in the new upload file. If loads are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Exporting Data to TomTom WEBFLEET ==&lt;br /&gt;
Once the DiPS import is complete, the drivers will require the ability to execute the jobs through TomTom WEBFLEET. In order to achieve that, CALIDUS ePOD must generate the orders on to TomTom WEBFLEET. A process already exists to complete that, when loads are set to In Progress. The setting of loads to this status is normally achieved through the ''CALIDUS'' ePOD devices requesting a load. As ''CALIDUS'' ePOD will not be in use at this time, a process will be required to automatically set the status of the earliest loads for a vehicle to In Progress.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD Process to automatically set Load In Progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This process will be a timed process, running every few minutes, after the DiPS Import has completed, but before any messages are sent to TomTom WEBFLEET. The process will be capable of being configured by Site (Depot). Any loads at status In Progress or Pending will be checked and the earliest load for that vehicle will be marked in progress. This will then automatically trigger a requirement to send this load to TomTom WEBFLEET. If there was already a load in progress for the vehicle, this load will be changed back to Pending and TomTom WEBFLEET will be informed to remove any jobs associated to this load from the worklist.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only vehicles configured with a TomTom External ID within ''CALIDUS'' ePOD will have orders sent to them.&lt;br /&gt;
* Only jobs that are not yet complete will be sent to TomTom WEBFLEET.&lt;br /&gt;
* Only Loads In Progress will be sent to TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs will be sent through as follows:&lt;br /&gt;
* Order No - Site (Depot) and Job ID. {{Note}}This is a unique ID for the job for TomTom purposes and is not the customer's reference.&lt;br /&gt;
* Object - Vehicle External Reference&lt;br /&gt;
* Date/Time - Planned Date/Time, plus a quarter-hour tolerance&lt;br /&gt;
* Lat/Long - from the customer or the address&lt;br /&gt;
* Order Type - Collection or Delivery&lt;br /&gt;
* Job Instructions&lt;br /&gt;
* Address line 1, Postcode and Country&lt;br /&gt;
* Contact information&lt;br /&gt;
&lt;br /&gt;
Some slight modifications to the way that data is sent to TomTom WEBFLEET for orders will be undertaken, as part of the product:&lt;br /&gt;
* Job Instructions will include the order reference to be displayed.&lt;br /&gt;
* The Planned Date and Time will be amended to be the Expected Arrival Date and Time (Planned Start Date/Time within ''CALIDUS'' ePOD).&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-WEBFLEET Interface Modifications.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Completing Jobs on TomTom WEBFLEET ==&lt;br /&gt;
Once work has been sent to a TomTom vehicle, these orders are visible within TomTom WEBFLEET and the driver can log on to the TomTom WEBFLEET application and see the list of jobs.&lt;br /&gt;
&lt;br /&gt;
The process of completing jobs on the WEBFLEET application depends on the fleet and/or device configuration, but is expected to be:&lt;br /&gt;
* An orders list is displayed, showing all the orders to be completed.&lt;br /&gt;
* Select the first job to view the instructions and information.&lt;br /&gt;
* Start the Job through the button provided.&lt;br /&gt;
* Navigate to the job using the TomTom routing provided.&lt;br /&gt;
* Arrive the Job through the button provided.&lt;br /&gt;
* Complete the Job through the button provided.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Capturing Completed Jobs Information ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into ''CALIDUS'' ePOD and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing ''CALIDUS'' ePOD User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Planned Vs Actual Reporting ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Removed as not required&lt;br /&gt;
If configured, the system will immediately show this screen with the report selected after the user has logged on to the system.&lt;br /&gt;
&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from two places in the ''CALIDUS'' ePOD Admin system:&lt;br /&gt;
* The ''Home'' screen (if the system is configured for this). &lt;br /&gt;
* The ''Reports'' screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Home.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Home Screen, where the report parameters will be.''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Planned Vs Actual Report.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The report is expected to be run daily.&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots for that customer.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default value).&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default value).&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default value). &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report, and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only completed or cancelled jobs will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** If a parameter is left as All Values, this will not appear in the name, with the exception of Depot and Date Range.&lt;br /&gt;
&lt;br /&gt;
Depending on browser settings, this may either offer to save the report immediately, or open immediately in the browser. If opened in the browser, the report may be saved locally.&lt;br /&gt;
&lt;br /&gt;
An example report has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders&lt;br /&gt;
* All titles and summary lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced.&lt;br /&gt;
*	Work time is defined as the time in between arriving at a location and departing a location. The working time consists of loading/unloading and paperwork&lt;br /&gt;
*	Travel time is defined as the time in between the start and arrive times stored against a job, either travelling on Collections/Deliveries or travel to/from the depot.&lt;br /&gt;
* Route displayed on the reports will be the new Route field added to the load, if this is not blank, otherwise this will be the default Load ID.&lt;br /&gt;
* Date displayed on the report will be the Planned End Date, when the delivery should be completed.&lt;br /&gt;
* Data on the report will be primarily sorted by Planned End Date, Vehicle Reg and Route, then any additional data specific to that tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the sum of the planned values against the jobs on the load.&lt;br /&gt;
* Actual - the sum of the actual values against the jobs on the load.&lt;br /&gt;
* Var - the planned summed value minus the actual summed value.&lt;br /&gt;
* % Var - the summed variance divided by the summed planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes).&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the planned values against the job.&lt;br /&gt;
* Actual - the actual values against the job.&lt;br /&gt;
* Var - the planned value minus the actual value.&lt;br /&gt;
* % Var - the variance divided by the planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
Breaks and Depot (Loading/Unloading) jobs will not include account number and postcode.&lt;br /&gt;
&lt;br /&gt;
Loading jobs will not include Distance or Travel Time variances.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance.&lt;br /&gt;
&lt;br /&gt;
The report will summarise at Load (route) and will display:&lt;br /&gt;
* No. Planned - a sum of the number of collection or delivery jobs on the load.&lt;br /&gt;
* No. Achieved - a sum of the number of collection or delivery jobs on the load where the actual arrival time is within the window.&lt;br /&gt;
* Var - No. Planned minus No. Achieved.&lt;br /&gt;
* % Var - No. Achieved divided by No. Planned, expressed as a percentage, rounded up. {{Note}} This is not the percentage variance, this is the percentage compliance. The column title will be labelled as '% Comp' rather than '% Var' to reflect this.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) or the planned arrival time, otherwise red background.&lt;br /&gt;
* Achieved Time Window - Yes or, depending if the arrival time is within the time window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Arrival Time - the actual Arrival Time.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there's only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-EPOD Integration Meeting.|Estimate=1|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-ePOD Interface for Load and Order Sequencing.|Estimate=11.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Add Time Windows.|Estimate=4.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD Process to automatically set Load In Progress.|Estimate=2.75|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD-WEBFLEET Interface Modifications.|Estimate=1.00|Notes=3&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=WEBFLEET-ePOD Job Update Interface.|Estimate=7.25|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Update non-working time as a new break.|Estimate=4.25|Notes=4&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Admin|Description=Display location of TomTom Order Arrival.|Estimate=1.25|Notes=2&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD/DiPS|Area=Reports|Description=Planned Vs Actual Report.|Estimate=11.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
# Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
# These changes are optional at extra cost&lt;br /&gt;
# This change is a product modification and at OBS cost&lt;br /&gt;
# This change is at additional cost&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=obs-eas-DIPS2AXS.xls&lt;br /&gt;
|RefV1=N/A&lt;br /&gt;
|RefDate1=13/12/2013&lt;br /&gt;
|Ref2=Tom Tom Reports.xlsx&lt;br /&gt;
|RefV2=N/A&lt;br /&gt;
|RefDate2=5/3/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics Product Manager&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2799</id>
		<title>REQ 332569 Greene King PvA</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2799"/>
		<updated>2016-01-31T11:55:46Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|TomTom WEBFLEET Planned Vs Actual Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.5}}&lt;br /&gt;
{{#vardefine:Date|31st January 2016}}&lt;br /&gt;
{{#vardefine:Reference|332569}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}} from various sales meetings.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
* Time Windows will be included as part of this project. However, the changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time may be added part of the full solution defined in that project.&lt;br /&gt;
* It is noted that multiple Time Windows are not supported in Aurora at this time. It is hoped that the changes specified within this document will be suitable to support this future requirement. However, if changes to Aurora require modifications to the application to support this, this will generate additional cost.&lt;br /&gt;
* Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
* The processing of jobs on the TomTom WEBFLEET devices is subject to configuration on the device and the fleet within WEBFLEET. Actual data gathered from TomTom WEBFLEET relies on the accurate use of the in-cab TomTom navigation unit, for example, the arrival button must be pressed on arrival to the destination. Incorrect configuration or use of this application will mean that the solution will not work as expected. For the solution to work as expected, this must include:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** Order Completion.&lt;br /&gt;
* The TomTom WEBFLEET application process above is as required for the stand-alone implementation of Planned Vs Actuals and TomTom WEBFLEET. When/if ''CALIDUS'' ePOD is implemented for the customer, this process is likely to be modified to simplify the process:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Completion used for Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** The ''CALIDUS'' ePOD application would then handle Order Completion times&lt;br /&gt;
* The Unique Load ID is assumed to be the Callover Sequence Number from DiPS, as this is the only depot-unique number available. Note that the Route Code is stored as part of this solution, but for reference and reporting only.&lt;br /&gt;
*	Planned Break jobs are part of this solution. DiPS can provide a planned driver break on the inbound file, and this will be in between of the execution or orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. If additional development is required regarding processing of break jobs within TomTom WEBFLEET, or the use of these jobs if utilising the full ''CALIDUS'' ePOD solution, this will generate additional cost and will be identified in the full ''CALIDUS'' ePOD solution if required.&lt;br /&gt;
* There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining the information from DiPS them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right of the Planned Vs Actual Report will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* It is not expected that ''CALIDUS'' Portal TTM will be in use with this system stand-alone, but that this will require the full ''CALIDUS'' ePOD solution to be implemented. &lt;br /&gt;
* The implemented system will not be capable of being used with the ''CALIDUS'' ePOD mobile device application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
*	Export of routes in drop order by DiPS&lt;br /&gt;
*	Import of routes into TomTom WEBFLEET&lt;br /&gt;
*	Export of planned vs. actual reporting&lt;br /&gt;
*	Operation of planned solution will be at individual depot level&lt;br /&gt;
&lt;br /&gt;
Additional request from 09/10/2015:&lt;br /&gt;
*	To ensure the drivers are clicking arrive at the correct location can we use the lat/long information sent back from TomTom to display on a map where the driver was at that point in time? If budget does not allow, can we just store the lat/long so Greene king can manually determine the location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Overview of Solution ==&lt;br /&gt;
*	Export of routes in drop order by DiPS.&lt;br /&gt;
*	Import of routes via C.S.V into ''CALIDUS'' ePOD. &lt;br /&gt;
*	Export of routes and jobs to TomTom WEBFLEET.&lt;br /&gt;
*	Import of completed jobs from TomTom WEBFLEET.&lt;br /&gt;
*	Export of planned vs. actual reporting in Excel format&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Process_Flow.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Cross-functional Process Flow''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Export Planned Routes From DiPS ==&lt;br /&gt;
{{Note}} The details of the integration from DiPS are subject to an integration meeting, to be scheduled. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-EPOD Integration Meeting.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Initial Run ===&lt;br /&gt;
Orders will be exported from Aurora into DiPS for route planning. DiPS is a route optimisation tool which optimises the drops in to the optimum route. When planned within DiPS, the routed orders with load details will be exported back into Aurora, through an existing interface, consisting of only limited details. At this time, DiPS will also generate a new fully-populated CSV for import into ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
The file will be generated from DiPS in mid-afternoon for the following day - they will then be finalised and sent through to TomTom.&lt;br /&gt;
&lt;br /&gt;
The file will contain all fields that can be exported from DiPS, to minimise any additional work required for any future requirements.&lt;br /&gt;
&lt;br /&gt;
The file will contain all routes for individual depot, or all routes for all depots. Routes must be assigned to a vehicle &amp;amp; driver. Routes must contain postcodes and/or valid Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
An example full file export has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
This file will be generated to a local or network folder, accessible by ''CALIDUS'' ePOD - this can be through an FTP account or file sharing. It will be expected to be named uniquely, as a variant of DIPS2AXS.TXT. Note that the name must either be unique per export, or unique per depot, or created as a different name then renamed for ''CALIDUS'' ePOD to pick up, to prevent partial uploading of the file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' ePOD will be modified to automatically import the file through a process triggered to run every few minutes. This will be a bespoke process written specifically for this purpose.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-ePOD Interface for Load and Order Sequencing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will process the file and create Loads and Jobs from the information provided.&lt;br /&gt;
&lt;br /&gt;
The first depot job on a load will be marked as a loading job, and all subsequent depot jobs on a load will be marked as an unloading job. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;LOA&amp;quot; or &amp;quot;UNL&amp;quot; and the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
Break jobs on a load will be generated as a normal job with customer 'BREAK'. They will be given a job address based on the BREAK customer, but with a Lat/Long set as the last job processed on the load. The instructions will be the break length. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;BRK&amp;quot;, plus the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} DiPS can provide a planned driver break on the inbound file, in between of the execution of orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
No functionality is included here to make Break jobs visible within ''CALIDUS'' ePOD specifically as Break job types or to handle them differently to collections or deliveries on the mobile device. If the full ''CALIDUS'' ePOD solution is put in place, a further change will be undertaken there to handle break jobs on the Android device and within the general administration screens. This will be added as a change in the Greene King ''CALIDUS'' ePOD solution design document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Load created will be stored in the normal tables within ''CALIDUS'' ePOD, with additional fields created for the new planned data.&lt;br /&gt;
&lt;br /&gt;
The process will generate the following standard ''CALIDUS'' ePOD tables:&lt;br /&gt;
* EPOD_LOAD - each unique load will be created, within the Site (Depot) owning the load.&lt;br /&gt;
* EPOD_JOB - a unique job will be created for the order on the load specified.&lt;br /&gt;
* EPOD_CUSTOMER - A customer record will be automatically created if one does not already exist, including the Lat/Long of the address.&lt;br /&gt;
* EPOD_JOB_ADDRESS - if the customer record exists, but the address or information on it differs to the information on the job, an Address will be created specifically for the job.&lt;br /&gt;
* EPOD_VEHICLE - A vehicle record will be automatically created for vehicle assigned to the load, based on the Vehicle Registration, if one does not already exist. {{Note}} Vehicles created automatically in this way will not have a TomTom ID (Object ID) assigned to them, meaning that loads for vehicles automatically generated in this way will NOT be automatically sent to TomTom until this is completed.&lt;br /&gt;
* EPOD_USER - a driver record will be automatically created based on the driver name received from DiPS. This driver ID will be generated from the driver name, and provided a generic password. {{Note}} Although not part of this project, these automatically created drivers may then be used on ''CALIDUS'' ePOD devices to complete the jobs. This will be disabled until ''CALIDUS'' ePOD is implemented.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following assumptions are made regarding the data that ''CALIDUS'' ePOD will use:&lt;br /&gt;
* Load&lt;br /&gt;
** Site - the depot, from CALLS OWNING DEPOT&lt;br /&gt;
** Load ID - from CALLOVER SEQUENCE NO. {{Note}} This load ID '''must''' be unique for every load ever created for a depot.&lt;br /&gt;
** Load Planned Start/End times - from the individual jobs on the load.&lt;br /&gt;
** Vehicle ID - generated from VEHICLE IDENT&lt;br /&gt;
** User ID - generated from DRIVER'S NAME OR CARRIER&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Route Code - TRIP LABEL&lt;br /&gt;
* Job&lt;br /&gt;
** Job Code (the main reference) - ORDER OR SHIPMENT ID. {{Note}} This reference '''must''' be unique for for the order on the load (it can appear as a collection and a delivery if required).&lt;br /&gt;
** Job Type - These will be identified as Delivery jobs only, regardless of whether they are collections or deliveries within DiPS. If functionality is added between Aurora and DiPS to identify collections to DiPS, this may generate additional development. As this would only affect the full ''CALIDUS'' ePOD solution (if implemented), this will be added as change to that project. &lt;br /&gt;
** Job Group (the main configuration of the execution of the jobs) - based on the job type, hard-coded. For Loading, Unloading and Break jobs, a different job group will be used to Collections and Deliveries.&lt;br /&gt;
** Job Instructions - a concatenation of the weights/quantities, or ORDER SPECIAL DELIVERY INST&lt;br /&gt;
** Planned Start Date/Time (Planned Arrival) - OPENING TIME 1&lt;br /&gt;
** Planned End Date/Time - CLOSING TIME 1&lt;br /&gt;
** Planned Distance - TRAVEL DISTANCE TO NEXT CALL from previous job on this load&lt;br /&gt;
** Customer Code - IDENT OF CALL OR DEPOT&lt;br /&gt;
** Customer Details, from:&lt;br /&gt;
*** Name - ADDRESS LINE 1&lt;br /&gt;
*** Address - ADDRESS LINE 2/3/4/5/POSTCODE&lt;br /&gt;
*** Telephone - TELEPHONE NUMBER&lt;br /&gt;
** Sequence on Job List - LINK SEQ NO&lt;br /&gt;
** Loading Type - For Depot jobs.&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Planned Travel Time (Minutes) - TRAVEL TIME TO NEXT CALL from the previous job&lt;br /&gt;
*** Planned Work Time (Minutes) - WORK TIME&lt;br /&gt;
*** ETA Date and Time - For TomTom WEBFLEET integration&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to support the functionality required within the Planned Vs Actual report regarding time windows, the application will be modified to store the time windows information from the DiPS interface.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Add Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
These will be added as new table, at Job level, to account for potential multiple time windows. The data is assumed to be taken from OPENING/CLOSING TIME 2 at this time. There is no way of identifying or specifying multiple delivery windows or customer delivery windows in the way that Aurora and DiPS plan jobs at this time. A customer is expected to always have a delivery window configured against it, and that it may change (by configuration) for each day of the week if required. Although this change will be made capable of storing multiple time windows against a job or against a customer, the interface here will ''only'' create job windows, and only one of them per job. Should Aurora and DiPS (or the interface between them) be modified to support multiple windows, or there is a product requirement to add multiple customer windows, this will generate additional cost. It is not expected that this will be required at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time will be added part of the full solution defined in that project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Update Run ===&lt;br /&gt;
&lt;br /&gt;
Additional orders, cancellation of orders and changes to orders already received throughout the day will necessitate changes to the plan. Aurora and DiPS will follow the same process to send orders across to DiPS and route plan them. When exported from DiPS, the same import file will be created for all of the orders and loads.&lt;br /&gt;
&lt;br /&gt;
When uploading files with orders and loads that have already been created, the process will update any existing Loads and Orders with the information from the new import file.&lt;br /&gt;
&lt;br /&gt;
When all imports are completed for a load, the process will check if any orders already on the load were not included in the new upload. If orders are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
When all load imports are completed, the process will check if any loads already in the system for that date were not included in the new upload file. If loads are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Exporting Data to TomTom WEBFLEET ==&lt;br /&gt;
Once the DiPS import is complete, the drivers will require the ability to execute the jobs through TomTom WEBFLEET. In order to achieve that, CALIDUS ePOD must generate the orders on to TomTom WEBFLEET. A process already exists to complete that, when loads are set to In Progress. The setting of loads to this status is normally achieved through the ''CALIDUS'' ePOD devices requesting a load. As ''CALIDUS'' ePOD will not be in use at this time, a process will be required to automatically set the status of the earliest loads for a vehicle to In Progress.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD Process to automatically set Load In Progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This process will be a timed process, running every few minutes, after the DiPS Import has completed, but before any messages are sent to TomTom WEBFLEET. The process will be capable of being configured by Site (Depot). Any loads at status In Progress or Pending will be checked and the earliest load for that vehicle will be marked in progress. This will then automatically trigger a requirement to send this load to TomTom WEBFLEET. If there was already a load in progress for the vehicle, this load will be changed back to Pending and TomTom WEBFLEET will be informed to remove any jobs associated to this load from the worklist.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only vehicles configured with a TomTom External ID within ''CALIDUS'' ePOD will have orders sent to them.&lt;br /&gt;
* Only jobs that are not yet complete will be sent to TomTom WEBFLEET.&lt;br /&gt;
* Only Loads In Progress will be sent to TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs will be sent through as follows:&lt;br /&gt;
* Order No - Site (Depot) and Job ID. {{Note}}This is a unique ID for the job for TomTom purposes and is not the customer's reference.&lt;br /&gt;
* Object - Vehicle External Reference&lt;br /&gt;
* Date/Time - Planned Date/Time, plus a quarter-hour tolerance&lt;br /&gt;
* Lat/Long - from the customer or the address&lt;br /&gt;
* Order Type - Collection or Delivery&lt;br /&gt;
* Job Instructions&lt;br /&gt;
* Address line 1, Postcode and Country&lt;br /&gt;
* Contact information&lt;br /&gt;
&lt;br /&gt;
Some slight modifications to the way that data is sent to TomTom WEBFLEET for orders will be undertaken, as part of the product:&lt;br /&gt;
* Job Instructions will include the order reference to be displayed.&lt;br /&gt;
* The Planned Date and Time will be amended to be the Expected Arrival Date and Time (Planned Start Date/Time within ''CALIDUS'' ePOD).&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-WEBFLEET Interface Modifications.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Completing Jobs on TomTom WEBFLEET ==&lt;br /&gt;
Once work has been sent to a TomTom vehicle, these orders are visible within TomTom WEBFLEET and the driver can log on to the TomTom WEBFLEET application and see the list of jobs.&lt;br /&gt;
&lt;br /&gt;
The process of completing jobs on the WEBFLEET application depends on the fleet and/or device configuration, but is expected to be:&lt;br /&gt;
* An orders list is displayed, showing all the orders to be completed.&lt;br /&gt;
* Select the first job to view the instructions and information.&lt;br /&gt;
* Start the Job through the button provided.&lt;br /&gt;
* Navigate to the job using the TomTom routing provided.&lt;br /&gt;
* Arrive the Job through the button provided.&lt;br /&gt;
* Complete the Job through the button provided.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Capturing Completed Jobs Information ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into ''CALIDUS'' ePOD and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing ''CALIDUS'' ePOD User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Planned Vs Actual Reporting ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Removed as not required&lt;br /&gt;
If configured, the system will immediately show this screen with the report selected after the user has logged on to the system.&lt;br /&gt;
&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from two places in the ''CALIDUS'' ePOD Admin system:&lt;br /&gt;
* The ''Home'' screen (if the system is configured for this). &lt;br /&gt;
* The ''Reports'' screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Home.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Home Screen, where the report parameters will be.''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Planned Vs Actual Report.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The report is expected to be run daily.&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots for that customer.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default value).&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default value).&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default value). &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report, and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only completed or cancelled jobs will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** If a parameter is left as All Values, this will not appear in the name, with the exception of Depot and Date Range.&lt;br /&gt;
&lt;br /&gt;
Depending on browser settings, this may either offer to save the report immediately, or open immediately in the browser. If opened in the browser, the report may be saved locally.&lt;br /&gt;
&lt;br /&gt;
An example report has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders&lt;br /&gt;
* All titles and summary lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced.&lt;br /&gt;
*	Work time is defined as the time in between arriving at a location and departing a location. The working time consists of loading/unloading and paperwork&lt;br /&gt;
*	Travel time is defined as the time in between the start and arrive times stored against a job, either travelling on Collections/Deliveries or travel to/from the depot.&lt;br /&gt;
* Route displayed on the reports will be the new Route field added to the load, if this is not blank, otherwise this will be the default Load ID.&lt;br /&gt;
* Date displayed on the report will be the Planned End Date, when the delivery should be completed.&lt;br /&gt;
* Data on the report will be primarily sorted by Planned End Date, Vehicle Reg and Route, then any additional data specific to that tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the sum of the planned values against the jobs on the load.&lt;br /&gt;
* Actual - the sum of the actual values against the jobs on the load.&lt;br /&gt;
* Var - the planned summed value minus the actual summed value.&lt;br /&gt;
* % Var - the summed variance divided by the summed planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes).&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the planned values against the job.&lt;br /&gt;
* Actual - the actual values against the job.&lt;br /&gt;
* Var - the planned value minus the actual value.&lt;br /&gt;
* % Var - the variance divided by the planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
Breaks and Depot (Loading/Unloading) jobs will not include account number and postcode.&lt;br /&gt;
&lt;br /&gt;
Loading jobs will not include Distance or Travel Time variances.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance.&lt;br /&gt;
&lt;br /&gt;
The report will summarise at Load (route) and will display:&lt;br /&gt;
* No. Planned - a sum of the number of collection or delivery jobs on the load.&lt;br /&gt;
* No. Achieved - a sum of the number of collection or delivery jobs on the load where the actual arrival time is within the window.&lt;br /&gt;
* Var - No. Planned minus No. Achieved.&lt;br /&gt;
* % Var - No. Achieved divided by No. Planned, expressed as a percentage, rounded up. {{Note}} This is not the percentage variance, this is the percentage compliance. The column title will be labelled as '% Comp' rather than '% Var' to reflect this.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) or the planned arrival time, otherwise red background.&lt;br /&gt;
* Achieved Time Window - Yes or, depending if the arrival time is within the time window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Arrival Time - the actual Arrival Time.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there's only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-EPOD Integration Meeting.|Estimate=1|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-ePOD Interface for Load and Order Sequencing.|Estimate=11.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Add Time Windows.|Estimate=4.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD Process to automatically set Load In Progress.|Estimate=2.75|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD-WEBFLEET Interface Modifications.|Estimate=1.00|Notes=3&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=WEBFLEET-ePOD Job Update Interface.|Estimate=7.25|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Update non-working time as a new break.|Estimate=4.25|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Admin|Description=Display location of TomTom Order Arrival.|Estimate=1.25|Notes=2&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD/DiPS|Area=Reports|Description=Planned Vs Actual Report.|Estimate=11.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
# Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
# These changes are optional.&lt;br /&gt;
# This change is a product modification and at OBS cost.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=obs-eas-DIPS2AXS.xls&lt;br /&gt;
|RefV1=N/A&lt;br /&gt;
|RefDate1=13/12/2013&lt;br /&gt;
|Ref2=Tom Tom Reports.xlsx&lt;br /&gt;
|RefV2=N/A&lt;br /&gt;
|RefDate2=5/3/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics Product Manager&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2798</id>
		<title>REQ 332569 Greene King PvA</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_332569_Greene_King_PvA&amp;diff=2798"/>
		<updated>2016-01-31T11:53:27Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v0.5 - Update following review&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|GK}}&lt;br /&gt;
{{#vardefine:ClientName|Greene King}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|TomTom WEBFLEET Planned Vs Actual Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.5}}&lt;br /&gt;
{{#vardefine:Date|31st January 2016}}&lt;br /&gt;
{{#vardefine:Reference|332569}}&lt;br /&gt;
{{#vardefine:Year|2016}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}} from various sales meetings.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
* Time Windows will be included as part of this project. However, the changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time may be added part of the full solution defined in that project.&lt;br /&gt;
* It is noted that multiple Time Windows are not supported in Aurora at this time. It is hoped that the changes specified within this document will be suitable to support this future requirement. However, if changes to Aurora require modifications to the application to support this, this will generate additional cost.&lt;br /&gt;
* Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
* The processing of jobs on the TomTom WEBFLEET devices is subject to configuration on the device and the fleet within WEBFLEET. Actual data gathered from TomTom WEBFLEET relies on the accurate use of the in-cab TomTom navigation unit, for example, the arrival button must be pressed on arrival to the destination. Incorrect configuration or use of this application will mean that the solution will not work as expected. For the solution to work as expected, this must include:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** Order Completion.&lt;br /&gt;
* The TomTom WEBFLEET application process above is as required for the stand-alone implementation of Planned Vs Actuals and TomTom WEBFLEET. When/if ''CALIDUS'' ePOD is implemented for the customer, this process is likely to be modified to simplify the process:&lt;br /&gt;
** Order Start.&lt;br /&gt;
** Order Completion used for Arrival.&lt;br /&gt;
** Order Cancellation with entry of reason code.&lt;br /&gt;
** The ''CALIDUS'' ePOD application would then handle Order Completion times&lt;br /&gt;
* The Unique Load ID is assumed to be the Callover Sequence Number from DiPS, as this is the only depot-unique number available. Note that the Route Code is stored as part of this solution, but for reference and reporting only.&lt;br /&gt;
*	Planned Break jobs are part of this solution. DiPS can provide a planned driver break on the inbound file, and this will be in between of the execution or orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. If additional development is required regarding processing of break jobs within TomTom WEBFLEET, or the use of these jobs if utilising the full ''CALIDUS'' ePOD solution, this will generate additional cost and will be identified in the full ''CALIDUS'' ePOD solution if required.&lt;br /&gt;
* There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining the information from DiPS them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right of the Planned Vs Actual Report will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* It is not expected that ''CALIDUS'' Portal TTM will be in use with this system stand-alone, but that this will require the full ''CALIDUS'' ePOD solution to be implemented. &lt;br /&gt;
* The implemented system will not be capable of being used with the ''CALIDUS'' ePOD mobile device application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
*	Export of routes in drop order by DiPS&lt;br /&gt;
*	Import of routes into TomTom WEBFLEET&lt;br /&gt;
*	Export of planned vs. actual reporting&lt;br /&gt;
*	Operation of planned solution will be at individual depot level&lt;br /&gt;
&lt;br /&gt;
Additional request from 09/10/2015:&lt;br /&gt;
*	To ensure the drivers are clicking arrive at the correct location can we use the lat/long information sent back from TomTom to display on a map where the driver was at that point in time? If budget does not allow, can we just store the lat/long so Greene king can manually determine the location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Overview of Solution ==&lt;br /&gt;
*	Export of routes in drop order by DiPS.&lt;br /&gt;
*	Import of routes via C.S.V into ''CALIDUS'' ePOD. &lt;br /&gt;
*	Export of routes and jobs to TomTom WEBFLEET.&lt;br /&gt;
*	Import of completed jobs from TomTom WEBFLEET.&lt;br /&gt;
*	Export of planned vs. actual reporting in Excel format&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Process_Flow.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Cross-functional Process Flow''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Export Planned Routes From DiPS ==&lt;br /&gt;
{{Note}} The details of the integration from DiPS are subject to an integration meeting, to be scheduled. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-EPOD Integration Meeting.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Initial Run ===&lt;br /&gt;
Orders will be exported from Aurora into DiPS for route planning. DiPS is a route optimisation tool which optimises the drops in to the optimum route. When planned within DiPS, the routed orders with load details will be exported back into Aurora, through an existing interface, consisting of only limited details. At this time, DiPS will also generate a new fully-populated CSV for import into ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
The file will be generated from DiPS in mid-afternoon for the following day - they will then be finalised and sent through to TomTom.&lt;br /&gt;
&lt;br /&gt;
The file will contain all fields that can be exported from DiPS, to minimise any additional work required for any future requirements.&lt;br /&gt;
&lt;br /&gt;
The file will contain all routes for individual depot, or all routes for all depots. Routes must be assigned to a vehicle &amp;amp; driver. Routes must contain postcodes and/or valid Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
An example full file export has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
This file will be generated to a local or network folder, accessible by ''CALIDUS'' ePOD - this can be through an FTP account or file sharing. It will be expected to be named uniquely, as a variant of DIPS2AXS.TXT. Note that the name must either be unique per export, or unique per depot, or created as a different name then renamed for ''CALIDUS'' ePOD to pick up, to prevent partial uploading of the file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' ePOD will be modified to automatically import the file through a process triggered to run every few minutes. This will be a bespoke process written specifically for this purpose.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=DiPS-ePOD Interface for Load and Order Sequencing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will process the file and create Loads and Jobs from the information provided.&lt;br /&gt;
&lt;br /&gt;
The first depot job on a load will be marked as a loading job, and all subsequent depot jobs on a load will be marked as an unloading job. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;LOA&amp;quot; or &amp;quot;UNL&amp;quot; and the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
Break jobs on a load will be generated as a normal job with customer 'BREAK'. They will be given a job address based on the BREAK customer, but with a Lat/Long set as the last job processed on the load. The instructions will be the break length. The Order Number (Job Code) for these jobs will be generated from a code &amp;quot;BRK&amp;quot;, plus the Load ID and a sequence.&lt;br /&gt;
&lt;br /&gt;
{{Note}} DiPS can provide a planned driver break on the inbound file, in between of the execution of orders, not during the execution of the orders. This solution expects that breaks will be created as delivery jobs with specific default information. These will then act identically to delivery jobs within TomTom WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
No functionality is included here to make Break jobs visible within ''CALIDUS'' ePOD specifically as Break job types or to handle them differently to collections or deliveries on the mobile device. If the full ''CALIDUS'' ePOD solution is put in place, a further change will be undertaken there to handle break jobs on the Android device and within the general administration screens. This will be added as a change in the Greene King ''CALIDUS'' ePOD solution design document.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Load created will be stored in the normal tables within ''CALIDUS'' ePOD, with additional fields created for the new planned data.&lt;br /&gt;
&lt;br /&gt;
The process will generate the following standard ''CALIDUS'' ePOD tables:&lt;br /&gt;
* EPOD_LOAD - each unique load will be created, within the Site (Depot) owning the load.&lt;br /&gt;
* EPOD_JOB - a unique job will be created for the order on the load specified.&lt;br /&gt;
* EPOD_CUSTOMER - A customer record will be automatically created if one does not already exist, including the Lat/Long of the address.&lt;br /&gt;
* EPOD_JOB_ADDRESS - if the customer record exists, but the address or information on it differs to the information on the job, an Address will be created specifically for the job.&lt;br /&gt;
* EPOD_VEHICLE - A vehicle record will be automatically created for vehicle assigned to the load, based on the Vehicle Registration, if one does not already exist. {{Note}} Vehicles created automatically in this way will not have a TomTom ID (Object ID) assigned to them, meaning that loads for vehicles automatically generated in this way will NOT be automatically sent to TomTom until this is completed.&lt;br /&gt;
* EPOD_USER - a driver record will be automatically created based on the driver name received from DiPS. This driver ID will be generated from the driver name, and provided a generic password. {{Note}} Although not part of this project, these automatically created drivers may then be used on ''CALIDUS'' ePOD devices to complete the jobs. This will be disabled until ''CALIDUS'' ePOD is implemented.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following assumptions are made regarding the data that ''CALIDUS'' ePOD will use:&lt;br /&gt;
* Load&lt;br /&gt;
** Site - the depot, from CALLS OWNING DEPOT&lt;br /&gt;
** Load ID - from CALLOVER SEQUENCE NO. {{Note}} This load ID '''must''' be unique for every load ever created for a depot.&lt;br /&gt;
** Load Planned Start/End times - from the individual jobs on the load.&lt;br /&gt;
** Vehicle ID - generated from VEHICLE IDENT&lt;br /&gt;
** User ID - generated from DRIVER'S NAME OR CARRIER&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Route Code - TRIP LABEL&lt;br /&gt;
* Job&lt;br /&gt;
** Job Code (the main reference) - ORDER OR SHIPMENT ID. {{Note}} This reference '''must''' be unique for for the order on the load (it can appear as a collection and a delivery if required).&lt;br /&gt;
** Job Type - These will be identified as Delivery jobs only, regardless of whether they are collections or deliveries within DiPS. If functionality is added between Aurora and DiPS to identify collections to DiPS, this may generate additional development. As this would only affect the full ''CALIDUS'' ePOD solution (if implemented), this will be added as change to that project. &lt;br /&gt;
** Job Group (the main configuration of the execution of the jobs) - based on the job type, hard-coded. For Loading, Unloading and Break jobs, a different job group will be used to Collections and Deliveries.&lt;br /&gt;
** Job Instructions - a concatenation of the weights/quantities, or ORDER SPECIAL DELIVERY INST&lt;br /&gt;
** Planned Start Date/Time (Planned Arrival) - OPENING TIME 1&lt;br /&gt;
** Planned End Date/Time - CLOSING TIME 1&lt;br /&gt;
** Planned Distance - TRAVEL DISTANCE TO NEXT CALL from previous job on this load&lt;br /&gt;
** Customer Code - IDENT OF CALL OR DEPOT&lt;br /&gt;
** Customer Details, from:&lt;br /&gt;
*** Name - ADDRESS LINE 1&lt;br /&gt;
*** Address - ADDRESS LINE 2/3/4/5/POSTCODE&lt;br /&gt;
*** Telephone - TELEPHONE NUMBER&lt;br /&gt;
** Sequence on Job List - LINK SEQ NO&lt;br /&gt;
** Loading Type - For Depot jobs.&lt;br /&gt;
** New fields will be required to store:&lt;br /&gt;
*** Planned Travel Time (Minutes) - TRAVEL TIME TO NEXT CALL from the previous job&lt;br /&gt;
*** Planned Work Time (Minutes) - WORK TIME&lt;br /&gt;
*** ETA Date and Time - For TomTom WEBFLEET integration&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is a requirement to display the Weight and Quantities on the TomTom WEBFLEET device, combining them into the instructions field. This can be achieved, depending on whether the length of the data required exceeds the length in ''CALIDUS'' ePOD. This will need to be agreed and the DiPS fields from which this data is taken agreed during the mapping session. If this exceeds the maximum length, additional cost may be incurred.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to support the functionality required within the Planned Vs Actual report regarding time windows, the application will be modified to store the time windows information from the DiPS interface.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Add Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
These will be added as new table, at Job level, to account for potential multiple time windows. The data is assumed to be taken from OPENING/CLOSING TIME 2 at this time. There is no way of identifying or specifying multiple delivery windows or customer delivery windows in the way that Aurora and DiPS plan jobs at this time. A customer is expected to always have a delivery window configured against it, and that it may change (by configuration) for each day of the week if required. Although this change will be made capable of storing multiple time windows against a job or against a customer, the interface here will ''only'' create job windows, and only one of them per job. Should Aurora and DiPS (or the interface between them) be modified to support multiple windows, or there is a product requirement to add multiple customer windows, this will generate additional cost. It is not expected that this will be required at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The changes here are to support multiple time windows from the bespoke DiPS interface, and for use within the Planned Vs Actual report only - there is no mechanism of viewing or editing these through the ePOD Admin application. If this is required, this will generate additional cost. If the full ''CALIDUS'' ePOD solution is agreed, this time will be added part of the full solution defined in that project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Update Run ===&lt;br /&gt;
&lt;br /&gt;
Additional orders, cancellation of orders and changes to orders already received throughout the day will necessitate changes to the plan. Aurora and DiPS will follow the same process to send orders across to DiPS and route plan them. When exported from DiPS, the same import file will be created for all of the orders and loads.&lt;br /&gt;
&lt;br /&gt;
When uploading files with orders and loads that have already been created, the process will update any existing Loads and Orders with the information from the new import file.&lt;br /&gt;
&lt;br /&gt;
When all imports are completed for a load, the process will check if any orders already on the load were not included in the new upload. If orders are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
When all load imports are completed, the process will check if any loads already in the system for that date were not included in the new upload file. If loads are found, these will be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Exporting Data to TomTom WEBFLEET ==&lt;br /&gt;
Once the DiPS import is complete, the drivers will require the ability to execute the jobs through TomTom WEBFLEET. In order to achieve that, CALIDUS ePOD must generate the orders on to TomTom WEBFLEET. A process already exists to complete that, when loads are set to In Progress. The setting of loads to this status is normally achieved through the ''CALIDUS'' ePOD devices requesting a load. As ''CALIDUS'' ePOD will not be in use at this time, a process will be required to automatically set the status of the earliest loads for a vehicle to In Progress.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD Process to automatically set Load In Progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This process will be a timed process, running every few minutes, after the DiPS Import has completed, but before any messages are sent to TomTom WEBFLEET. The process will be capable of being configured by Site (Depot). Any loads at status In Progress or Pending will be checked and the earliest load for that vehicle will be marked in progress. This will then automatically trigger a requirement to send this load to TomTom WEBFLEET. If there was already a load in progress for the vehicle, this load will be changed back to Pending and TomTom WEBFLEET will be informed to remove any jobs associated to this load from the worklist.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only vehicles configured with a TomTom External ID within ''CALIDUS'' ePOD will have orders sent to them.&lt;br /&gt;
* Only jobs that are not yet complete will be sent to TomTom WEBFLEET.&lt;br /&gt;
* Only Loads In Progress will be sent to TomTom WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs will be sent through as follows:&lt;br /&gt;
* Order No - Site (Depot) and Job ID. {{Note}}This is a unique ID for the job for TomTom purposes and is not the customer's reference.&lt;br /&gt;
* Object - Vehicle External Reference&lt;br /&gt;
* Date/Time - Planned Date/Time, plus a quarter-hour tolerance&lt;br /&gt;
* Lat/Long - from the customer or the address&lt;br /&gt;
* Order Type - Collection or Delivery&lt;br /&gt;
* Job Instructions&lt;br /&gt;
* Address line 1, Postcode and Country&lt;br /&gt;
* Contact information&lt;br /&gt;
&lt;br /&gt;
Some slight modifications to the way that data is sent to TomTom WEBFLEET for orders will be undertaken, as part of the product:&lt;br /&gt;
* Job Instructions will include the order reference to be displayed.&lt;br /&gt;
* The Planned Date and Time will be amended to be the Expected Arrival Date and Time (Planned Start Date/Time within ''CALIDUS'' ePOD).&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-WEBFLEET Interface Modifications.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Completing Jobs on TomTom WEBFLEET ==&lt;br /&gt;
Once work has been sent to a TomTom vehicle, these orders are visible within TomTom WEBFLEET and the driver can log on to the TomTom WEBFLEET application and see the list of jobs.&lt;br /&gt;
&lt;br /&gt;
The process of completing jobs on the WEBFLEET application depends on the fleet and/or device configuration, but is expected to be:&lt;br /&gt;
* An orders list is displayed, showing all the orders to be completed.&lt;br /&gt;
* Select the first job to view the instructions and information.&lt;br /&gt;
* Start the Job through the button provided.&lt;br /&gt;
* Navigate to the job using the TomTom routing provided.&lt;br /&gt;
* Arrive the Job through the button provided.&lt;br /&gt;
* Complete the Job through the button provided.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Capturing Completed Jobs Information ==&lt;br /&gt;
As each job is actioned by the drivers, information on those actions is stored within TomTom WEBFLEET. This information will be pulled back into ''CALIDUS'' ePOD and will update the jobs. A new process will be required to complete this. This will be a timed process, running at regular intervals.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=WEBFLEET-ePOD Job Update Interface.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will create a queue to poll for:&lt;br /&gt;
* Order Completion messages&lt;br /&gt;
* Order Cancellation messages&lt;br /&gt;
* Order Started messages&lt;br /&gt;
* Order Arrived messages&lt;br /&gt;
All these messages should include Odometer and Lat/Long co-ordinates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each message will be processed and then acknowledged from the queue. The success or failure of processing of the message files received from TomTom will be audited.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is intended that processing these messages will provide the following information:&lt;br /&gt;
* Job Status (Completed/Cancelled)&lt;br /&gt;
* Reason for cancellation if required&lt;br /&gt;
* Start/Arrival/End Times&lt;br /&gt;
* Start/Arrival/End Odometer readings&lt;br /&gt;
This information will then be used to update the jobs on ''CALIDUS'' ePOD.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs that are cancelled on TomTom WEBFLEET devices provide a different interface back into ''CALIDUS'' ePOD - this requires prototyping at functional specification stage and may result in increased cost. Reasons entered against a cancelled job are also required. It is expected, however, that the costs in this document will be sufficient to achieve the full interface. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TomTom WEBFLEET non-working time (unplanned breaks) is required to be supported by this project and therefore this interface - if the driver logs non-working time as part of the execution of an order, this will generate a break job in the database, with no planned times or distances. Additionally, this time will be taken away from any travel or working time on any jobs that have actual start, arrival or end times around that unplanned break. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Update non-working time as a new break&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
When all jobs on a load are updated to cancelled or completed through this interface, the load will be marked as complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An optional change has also been requested to indicate the position at which the driver clicks the Arrive button, so that Greene King can check the location.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display location of TomTom Order Arrival.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In order to achieve this, this process will write User Audit records for each message processed from the TomTom files received, for the following information:&lt;br /&gt;
* Order Started&lt;br /&gt;
* Order Arrived&lt;br /&gt;
* Order Completed&lt;br /&gt;
&lt;br /&gt;
This information would then be accessible through the existing ''CALIDUS'' ePOD User Audit Admin screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_User_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin User Tracking Screen, showing prototyped TomTom messages''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Planned Vs Actual Reporting ==&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from the Reports menu in the ''CALIDUS'' ePOD Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Removed as not required&lt;br /&gt;
If configured, the system will immediately show this screen with the report selected after the user has logged on to the system.&lt;br /&gt;
&lt;br /&gt;
A facility will exist within ''CALIDUS'' ePOD to allow reporting of Planned Vs Actuals. This will be available from two places in the ''CALIDUS'' ePOD Admin system:&lt;br /&gt;
* The ''Home'' screen (if the system is configured for this). &lt;br /&gt;
* The ''Reports'' screen.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_Home.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Home Screen, where the report parameters will be.''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[file:REQ_332571_Admin_Reports.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped TomTom Planned Vs Actual Report''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Planned Vs Actual Report.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The report is expected to be run daily.&lt;br /&gt;
&lt;br /&gt;
The report will allow the following parameters to be entered:&lt;br /&gt;
*	Depot - This will default to the current Site. The drop-down list will allow the selection of other depots configured specifically for the report, or all depots for that customer.&lt;br /&gt;
*	Driver - an optional parameter, to select only loads completed by a particular driver. The parameter will allow selection of one specific driver from the depots selected, or all drivers from the depots selected (the default value).&lt;br /&gt;
*	Vehicle Reg - an optional parameter, to select only loads completed on a particular vehicle. The parameter will allow selection of one specific vehicle from the depots selected, or all vehicles from the depots selected (the default value).&lt;br /&gt;
*	Date range - a required parameter. This will select jobs with a Planned End date within this range. This will default to the current date for both parameters. A range of more than one month will not be allowed, although it will be allowed to select a range earlier.&lt;br /&gt;
*	Customer Account number - an optional parameter, to select jobs for a specific customer only. The parameter will allow selection of one specific customer from the depots selected, or all customers from the depots selected (the default value). &lt;br /&gt;
&lt;br /&gt;
[[file:REQ_332571_Admin_PvA_Parms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Admin Reports Screen, showing prototyped report parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once selected, the user will run the report, and the system will generate a Microsoft Excel file with the results.&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Only completed or cancelled jobs will be selected.&lt;br /&gt;
* The report will be named based on the parameters selected:&lt;br /&gt;
** PVA_{Depot}_{Driver}_{Vehicle}_{Customer}_{Date}.xls&lt;br /&gt;
** If a parameter is left as All Values, this will not appear in the name, with the exception of Depot and Date Range.&lt;br /&gt;
&lt;br /&gt;
Depending on browser settings, this may either offer to save the report immediately, or open immediately in the browser. If opened in the browser, the report may be saved locally.&lt;br /&gt;
&lt;br /&gt;
An example report has been provided and is referenced in [[#Appendix B: Document References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
The report will have multiple tabs as defined in the sample report provided. An additional Parameters tab will be created as the first tab, showing the parameters entered. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Report Parameters ===&lt;br /&gt;
[[file:REQ_332571_PvA_Parameters.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Parameters Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Parameters screen will show the report title and the selected parameters. Where a parameter is selected, the code and the description will be shown.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General Tab Notes:&lt;br /&gt;
* All pages will include the title bar, consisting of the tab title alone.&lt;br /&gt;
* The TomTom Logo in the top left and the GK Logo in the top right will '''not''' be produced on the report. If this is required, and additional change will be required at additional cost.&lt;br /&gt;
* All tables will be outlined with single borders&lt;br /&gt;
* All titles and summary lines will be bold.&lt;br /&gt;
* All titles will be fixed - no additional fields can be added and the text may not be changed through configuration of the report, although they may be changed after the report is produced.&lt;br /&gt;
*	Work time is defined as the time in between arriving at a location and departing a location. The working time consists of loading/unloading and paperwork&lt;br /&gt;
*	Travel time is defined as the time in between the start and arrive times stored against a job, either travelling on Collections/Deliveries or travel to/from the depot.&lt;br /&gt;
* Route displayed on the reports will be the new Route field added to the load, if this is not blank, otherwise this will be the default Load ID.&lt;br /&gt;
* Date displayed on the report will be the Planned End Date, when the delivery should be completed.&lt;br /&gt;
* Data on the report will be primarily sorted by Planned End Date, Vehicle Reg and Route, then any additional data specific to that tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Summary ===&lt;br /&gt;
[[file:REQ_332571_PvA_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per load (Route) and Vehicle.&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the sum of the planned values against the jobs on the load.&lt;br /&gt;
* Actual - the sum of the actual values against the jobs on the load.&lt;br /&gt;
* Var - the planned summed value minus the actual summed value.&lt;br /&gt;
* % Var - the summed variance divided by the summed planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values and the total number of lines (routes).&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plan vs Actual Detail ===&lt;br /&gt;
[[file:REQ_332571_PvA_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Plan vs Actual Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned distances, work time and travel time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
Each of the monitored values will be calculated as follows:&lt;br /&gt;
* Plan - the planned values against the job.&lt;br /&gt;
* Actual - the actual values against the job.&lt;br /&gt;
* Var - the planned value minus the actual value.&lt;br /&gt;
* % Var - the variance divided by the planned value, expressed as a percentage with 1 decimal place.&lt;br /&gt;
&lt;br /&gt;
Breaks and Depot (Loading/Unloading) jobs will not include account number and postcode.&lt;br /&gt;
&lt;br /&gt;
Loading jobs will not include Distance or Travel Time variances.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Summary ===&lt;br /&gt;
[[file:REQ_332571_Window_Summary.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Summary Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show a summary of the drops planned on a load, the number achieved within the window, and the variance.&lt;br /&gt;
&lt;br /&gt;
The report will summarise at Load (route) and will display:&lt;br /&gt;
* No. Planned - a sum of the number of collection or delivery jobs on the load.&lt;br /&gt;
* No. Achieved - a sum of the number of collection or delivery jobs on the load where the actual arrival time is within the window.&lt;br /&gt;
* Var - No. Planned minus No. Achieved.&lt;br /&gt;
* % Var - No. Achieved divided by No. Planned, expressed as a percentage, rounded up. {{Note}} This is not the percentage variance, this is the percentage compliance. The column title will be labelled as '% Comp' rather than '% Var' to reflect this.&lt;br /&gt;
&lt;br /&gt;
A total line will be shown, totalling all the calculated monitored values.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Detail ===&lt;br /&gt;
[[file:REQ_332571_Time_Detail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Detail Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show the variance between the planned time windows and planned and actual time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes. This should be green background if the arrival time is within 30 minutes (plus or minus) or the planned arrival time, otherwise red background.&lt;br /&gt;
* Achieved Time Window - Yes or, depending if the arrival time is within the time window. This should be green background if Yes, other red background.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in landscape.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Time Window Exception ===&lt;br /&gt;
[[file:REQ_332571_Window_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Time Window Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within the planned time window, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Time Window - the time window received for the job.&lt;br /&gt;
* Arrival Time - the actual Arrival Time.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrival Time Exception ===&lt;br /&gt;
[[file:REQ_332571_Arrival_Exception.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample Arrival Time Exception Tab''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The report will show any jobs where the actual arrival time is not within 30 minutes of the planned time, per job (account) on a load (route).&lt;br /&gt;
&lt;br /&gt;
The report will display:&lt;br /&gt;
* Planned Arrival Time - Planned Start Time.&lt;br /&gt;
* Actual Arrival Time - Arrival Time.&lt;br /&gt;
* Var - Actual Arrival minus planned arrival, in minutes.&lt;br /&gt;
&lt;br /&gt;
The page will be oriented in portrait.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there's only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-EPOD Integration Meeting.|Estimate=1|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=DiPS-ePOD Interface for Load and Order Sequencing.|Estimate=11.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Add Time Windows.|Estimate=4.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD Process to automatically set Load In Progress.|Estimate=2.75|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=ePOD-WEBFLEET Interface Modifications.|Estimate=1.00|Notes=3&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=WEBFLEET-ePOD Job Update Interface.|Estimate=7.5|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Integration|Description=Update non-working time as a new break.|Estimate=4.00|Notes=&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Admin|Description=Display location of TomTom Order Arrival.|Estimate=1.25|Notes=2&lt;br /&gt;
}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD/DiPS|Area=Reports|Description=Planned Vs Actual Report.|Estimate=11.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
# Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
# These changes are optional.&lt;br /&gt;
# This change is a product modification and at OBS cost.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=obs-eas-DIPS2AXS.xls&lt;br /&gt;
|RefV1=N/A&lt;br /&gt;
|RefDate1=13/12/2013&lt;br /&gt;
|Ref2=Tom Tom Reports.xlsx&lt;br /&gt;
|RefV2=N/A&lt;br /&gt;
|RefDate2=5/3/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Rob Carter&lt;br /&gt;
|Rev1Title=Greene King&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics Product Manager&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_332237_Prevent_start_jobs_without_products&amp;diff=2737</id>
		<title>EST 332237 Prevent start jobs without products</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_332237_Prevent_start_jobs_without_products&amp;diff=2737"/>
		<updated>2016-01-11T15:18:22Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Estimate&lt;br /&gt;
|Supimix_Client_Code=HEW&lt;br /&gt;
|Supimix_Project_Code=DEV&lt;br /&gt;
|Supimix_Site_Code=BSE&lt;br /&gt;
|Supimix_Client_Reference=&amp;amp;nbsp;&lt;br /&gt;
|Supimix_Number=332237&lt;br /&gt;
|The_version_of_the_document=1.0&lt;br /&gt;
|Your_Name=A N Walker&lt;br /&gt;
|Supimix_PO_Reference=&amp;amp;nbsp;&lt;br /&gt;
|Supimix_Priority=3&lt;br /&gt;
|Date_(DD/MM/YY)=11/01/2016&lt;br /&gt;
|Clients_Customer=&amp;amp;nbsp;&lt;br /&gt;
|System_Version_being_changed=3.X&lt;br /&gt;
|Client_Request=Stop jobs with no product being entered&lt;br /&gt;
&lt;br /&gt;
Question - At load creation stage in the office, could there be a prompt &amp;quot;product must be loaded&amp;quot; before linking a delivery to collection? This would be instead of the two options you gave.&lt;br /&gt;
|OBS_Solution=&lt;br /&gt;
The Admin Job Creation popup screen will be modified, on clicking the Link button, to check whether there are any products or containers present on the job being linked. If none are found, the application will display an alert informing the user 'Product must be loaded' with an '''OK''' button only. The link job will not be created and the user will be left editing the original job. &lt;br /&gt;
&lt;br /&gt;
A new Site flag will be created to control this additional validation. &lt;br /&gt;
&lt;br /&gt;
{{Note}} This solution above is as requested - other ways of creating jobs exist that this change will not enforce the user to enter products, for example, creating collection or delivery jobs without products, without linking it to another. It is, however, noted that this is not normal operational procedure for Hewicks.&lt;br /&gt;
|Requirements_Days=0&lt;br /&gt;
|Estimation_Days=0&lt;br /&gt;
|Functional_Specification_Days=0.25&lt;br /&gt;
|Technical_Specification_Days=0.25&lt;br /&gt;
|Development_Days=1.75&lt;br /&gt;
|Testing_and_Release_Days=0.25&lt;br /&gt;
|Implementation_Days=0.25&lt;br /&gt;
|Project_Management_Days=0.25&lt;br /&gt;
|Year=2016&lt;br /&gt;
|Free_Of_Charge=N&lt;br /&gt;
|Supimix_Client_Code=HEW}}&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_332237_Prevent_start_jobs_without_products&amp;diff=2736</id>
		<title>EST 332237 Prevent start jobs without products</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_332237_Prevent_start_jobs_without_products&amp;diff=2736"/>
		<updated>2016-01-11T15:17:07Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Estimate&lt;br /&gt;
|Supimix_Client_Code=HEW&lt;br /&gt;
|Supimix_Project_Code=DEV&lt;br /&gt;
|Supimix_Site_Code=BSE&lt;br /&gt;
|Supimix_Client_Reference=&amp;amp;nbsp;&lt;br /&gt;
|Supimix_Number=332237&lt;br /&gt;
|The_version_of_the_document=0.1&lt;br /&gt;
|Your_Name=A N Walker&lt;br /&gt;
|Supimix_PO_Reference=&amp;amp;nbsp;&lt;br /&gt;
|Supimix_Priority=3&lt;br /&gt;
|Date_(DD/MM/YY)=08/01/2016&lt;br /&gt;
|Clients_Customer=&amp;amp;nbsp;&lt;br /&gt;
|System_Version_being_changed=3.X&lt;br /&gt;
|Client_Request=Stop jobs with no product being entered&lt;br /&gt;
&lt;br /&gt;
Question - At load creation stage in the office, could there be a prompt &amp;quot;product must be loaded&amp;quot; before linking a delivery to collection? This would be instead of the two options you gave.&lt;br /&gt;
|OBS_Solution=&lt;br /&gt;
The Admin Job Creation popup screen will be modified, on clicking the Link button, to check whether there are any products or containers present on the job being linked. If none are found, the application will display an alert informing the user 'Product must be loaded' with an '''OK''' button only. The link job will not be created and the user will be left editing the original job. &lt;br /&gt;
&lt;br /&gt;
A new Site flag will be created to control this additional validation. &lt;br /&gt;
&lt;br /&gt;
{{Note}} This solution above is as requested - other ways of creating jobs exist that this change will not enforce the user to enter products, for example, creating collection or delivery jobs without products, without linking it to another. It is, however, noted that this is not normal operational procedure for Hewicks.&lt;br /&gt;
|Requirements_Days=0&lt;br /&gt;
|Estimation_Days=0&lt;br /&gt;
|Functional_Specification_Days=0.25&lt;br /&gt;
|Technical_Specification_Days=0.25&lt;br /&gt;
|Development_Days=1.75&lt;br /&gt;
|Testing_and_Release_Days=0.25&lt;br /&gt;
|Implementation_Days=0.25&lt;br /&gt;
|Project_Management_Days=0.25&lt;br /&gt;
|Year=2016&lt;br /&gt;
|Free_Of_Charge=N&lt;br /&gt;
|Supimix_Client_Code=HEW}}&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2702</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2702"/>
		<updated>2015-12-19T11:17:54Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.00}}&lt;br /&gt;
{{#vardefine:Date|19th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} This is a non-essential change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account which is included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
== '''Non-Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2701</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2701"/>
		<updated>2015-12-19T11:12:17Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.00}}&lt;br /&gt;
{{#vardefine:Date|19th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} This is a non-essential change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of Postponed or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
== '''Non-Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2700</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2700"/>
		<updated>2015-12-19T11:09:33Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.00}}&lt;br /&gt;
{{#vardefine:Date|19th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} This is a non-essential change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided as an option for job postponement&lt;br /&gt;
&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of ‘postponement’ or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
== '''Non-Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2699</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2699"/>
		<updated>2015-12-19T11:03:22Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 Review and Issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|1.00}}&lt;br /&gt;
{{#vardefine:Date|19th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
* Load 1 (600 products, 50 totes or loose, 40 jobs):&lt;br /&gt;
** 20 jobs with no totes, 5 loose products&lt;br /&gt;
** 10 jobs with 1 tote of 30 products, no loose products&lt;br /&gt;
** 10 jobs with 2 totes of 10 products, no loose products&lt;br /&gt;
* Load 2 (500 products, 30 totes or loose, 11 jobs):&lt;br /&gt;
** 1 (opening) job with 20 totes of 20 products, no loose products&lt;br /&gt;
** 5 jobs with no totes, 10 loose products&lt;br /&gt;
** 5 jobs with 1 tote of 10 products, no loose products&lt;br /&gt;
The jobs above represent the number of jobs and products that may be required for jobs, in line with the sizings provided by Zenith Hygiene on 9-16 Dec. &lt;br /&gt;
&lt;br /&gt;
{{Note}} There are tramping deliveries over 2 and 3 days will be created for some depots, although it has been confirmed that the total volumes (of jobs, totes and products) will be similar to those sample details already provided.&lt;br /&gt;
&lt;br /&gt;
Results of processing these loads are as follows:&lt;br /&gt;
* Load 1 request took 0:42, auto update with no changes 0:02, auto update with changes to everything took 0:40.&lt;br /&gt;
* Load 2 request took 0:31, auto update with no changes 0:01, auto update with changes to everything took 0:31.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues.&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
If these speeds or recommendations are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed. If this is not acceptable, further modifications to the software or design may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configure these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The lead driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''CALIDUS'' VEhub (for defect checks and other functionality) is not included in this solution design.&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
*	The maximum number of drops per day per driver run can be 50-60.&lt;br /&gt;
*	There will be a maximum of 500-600 products on a driver's run.&lt;br /&gt;
*	There are an average of 25 totes per vehicle, plus a loose products bin and pallets to pick from (for high-volume products).&lt;br /&gt;
*	Accurate figures regarding certain run types have been provided, as well as a week's data from Welham Green depot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system.&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	OBSL are to ensure that the devices are provided with cradles and include this in the cost of the hardware. Cradles are required in the warehouse and vehicles.&lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Orders are grouped by depot (Welham Green, Droitwich, etc) and type (P - Pallets, B - Bulk, W - Mixed) for picking purposes.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Orders are picked in several ways according to the routes created, and the type of deliveries:&lt;br /&gt;
** Into totes - this is the most normal delivery mechanism, usually for smaller products&lt;br /&gt;
** As loose products, placed on the vehicle in the loose products bin. Also very common. Jobs (indeed an entire route) can be entirely bulk delivered, either as loose products or palletised.&lt;br /&gt;
** Line picked onto pallets, for large volume or size products, picked by the driver at the delivery point.&lt;br /&gt;
** Bulk pallets, for large bulk deliveries. These are treated as loose products delivery, where the product is scanned.&lt;br /&gt;
** Bulk pallets, for onward delivery to DHL. These would be treated as Tote delivery, where the container only is scanned.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver/Customer Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Collections&lt;br /&gt;
{{Note}} Collections may not require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Driver and Vehicle resource information.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager) - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container (Pallet or Tote) ID - unique for the job&lt;br /&gt;
** An indication as to whether this container requires contained product scanning (in addition to container-only scanning)&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code - the Sage product code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** VAT Code&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
** Alternate Barcode Identifiers - within the Long Description field&lt;br /&gt;
&lt;br /&gt;
There is a requirement to display the total weight and unique products on the Job List and Job Details screen (shown as a change in the Job List section below). Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if calculated on the device, and must therefore be calculated in the server or received from Sage. The development required for either solution is the same, and the calculated values per job will be passed to the device for display.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers and vehicles, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device entering their provided user name and password and selecting the vehicle from a drop-down list. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith are concerned that the driver will just click through the vehicle defect checks without physically performing the checks. It should take a minimum amount of time to complete the check. Zenith would like some functionality added to set a timer when vehicle checks are started, so that the driver cannot complete the vehicle checks until a specified period of time has passed.&lt;br /&gt;
&lt;br /&gt;
The device will be modified to set this time, and to display the countdown of the time remaining in place of the '''Confirm''' button. When this timer reaches zero, the button will change to '''Confirm''' and will be enabled. If the driver exits the app and restarts, the timer will also restart.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Timer to prevent Vehicle Check Completion.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note}} This is a non-essential change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
This list will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. &lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Unique Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This information will be sent to the device from the server - it will not be calculated on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Consolidated jobs will display the total unique products per consolidation as the sum of the total unique products on the consolidated jobs, which may lead to higher figures than should be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job - the device will display the ''Job Details'' screen.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing will be allowed with a warning, as the drivers will be able to choose whether to start a job based on the weight and total unique products on that delivery. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
It has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD. Further, if a customer calls to cancel or amend an order whilst the vehicle is en route to the delivery, the driver will be informed through call or text to their device, and will then cancel or amend the job through the application. Given that the load may be refreshed manually at any time, and that the reallocation of vehicles or drivers is mostly reactive and manual, the automatic refresh of the load whilst en route will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Two none development options have been provided as an option for job postponement&lt;br /&gt;
1) If the driver arrives at site and the customer cannot take delivery at that time the driver can back out of the job and select the next job on their list. Note that this will not send any information back to the EPOD system. The job will just remain in progress on EPOD until the driver completes the job at a later time&lt;br /&gt;
2) The driver can cancel the job on the PDA with a reason code of ‘postponement’ or a reason code that Zenith configure within the admin system. This would then cancel the job on the EPOD system and debrief it back to Sage. The order can then be re-entered/rebooked on Sage and sent through again to EPOD after being planned on to the drivers load. The driver will then receive the job again as an update within their current list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs and spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Job Swap functionality requires a data connection - it cannot be completed off-line.&lt;br /&gt;
&lt;br /&gt;
It is expected that the drivers and crew in the morning in the depot before departure - this is to ensure that there is no issue with data connectivity whilst out on the road.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs. {{Note}} This is classified as part of the changes specified to the Job List above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the total weight/unique products for each job will be displayed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
When clicking this button to start or arrive at the job, the application normally performs a check whether the job has been changed since it was loaded on the device. As it has been confirmed that there will never be modifications of a load after it has been loaded and interfaced to ''CALIDUS'' ePOD, this check will be configured to be disabled on the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job, nor will it prevent a postponed job being started at any time after postponement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Tote with multiple products (with only the tote needing to be scanned), a bulk pallet of a product line, which will be scanned by product and confirmed line by line, and also loose products in a bin on the vehicle, which will also be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs, as well as a 'Loose Products' entry on this list, to access scanning of the loose products.&lt;br /&gt;
&lt;br /&gt;
The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. The 'Loose Products' container will only be displayed if there are loose products as part of the delivery.&lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Zenith, each product could come from multiple manufacturers and, as such, could have multiple unique barcodes that identify the product. Products can also have multiple EAN barcodes, although it is confirmed that the products are only sold by inner UOM and therefore should only be that barcode to be scanned. Furthermore, some products (liquid cleaning) have been labelled with Zenith barcodes. It should be noted that the Sage Product code must also be visible on the device. ''CALIDUS'' ePOD must be modified to allow the receipt of multiple alternate identifying barcodes with the products, and use those to identify the products when scanned on the device.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Scanning of alternate Product Barcodes.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith pick to pallet. The pallet can contain multiple SKUs for multiple customers and drops. The driver will break the product down on the vehicle and then deliver the quantity of the specific products to the customer.&lt;br /&gt;
&lt;br /&gt;
The application will be modified to identify these bulk pallets. When scanned or selected from the Containers list, the application will not immediately mark them as delivered, but will instead list all the products required to be picked from the bulk pallet, similarly to the Loose Products container process shown above.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Identify Pallets that require Product Scanning.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
&amp;lt;!-- {{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Collection jobs will be sent as part of the route with the delivery jobs. These will be marked as collection jobs by the interface from Sage.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Full details have not been received on the collection process other than:&lt;br /&gt;
* Collections jobs are created solely for the return of product from a customer &lt;br /&gt;
* They feature Loose Product collection only.&lt;br /&gt;
This must be confirmed and/or further details provided by Zenith, otherwise the following process will apply.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look similar to a delivery job, with the general exception that the screen displays 'Collection' instead.&lt;br /&gt;
&lt;br /&gt;
As collection jobs do not have any containers (pallets or totes) but only loose products, the container tab will not be shown.&lt;br /&gt;
&lt;br /&gt;
Loose Products may be collected as in a normal delivery - the products list will display the same level of information as Loose Products as on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as collected in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Collect X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Collect X'' from the pop-up menu.&lt;br /&gt;
When marked as collected, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as collected or cancelled, the Collection process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Amending Jobs ==&lt;br /&gt;
Some customers check the products within the tote, and others do not. Zenith cannot advise ''CALIDUS'' ePOD electronically of which ones are which, as it can depend on whether a manager is on the premises at the time of delivery. So, on occasion, a customer will not check and at other times they will. The solution must cater for tote scanning without scanning products contained within it (as shown above) and confirmation of individual products where required.&lt;br /&gt;
&lt;br /&gt;
So, the customer may request a change in what was delivered after scanning all items for delivery, or to refuse delivery of:&lt;br /&gt;
* All products in a tote&lt;br /&gt;
* All or some loose products&lt;br /&gt;
* All or some of an individual loose product&lt;br /&gt;
* All or some of an individual product in a tote or pallet&lt;br /&gt;
&lt;br /&gt;
If the system is configured for amendment after job completion, once all items are confirmed, the screens will redisplay all containers (totes, pallets) and loose products on the screen, indicating a status (Complete, cancelled, etc) and coloured appropriately (cancelled in red, amended in amber, fully complete in green). The driver will be able to modify the quantity against a product in several ways:&lt;br /&gt;
* For loose products, select the Loose Product Container, then the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For products within a tote or pallet, selecting the container on the list, then selecting Products from the pop-up action menu, then selecting the product from the Products tab, then selecting the action required from the pop-up menu.&lt;br /&gt;
* For cancelling a whole tote or pallet, select the container, then select Cancel from the pop-up actions menu.&lt;br /&gt;
* For delivering a whole tote or pallet that has been cancelled, select the container, then select Deliver from the pop-up actions menu.&lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that no changes are required to the system to allow for this functionality. This will be checked and confirmed as part of this project. &lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow amendment of products in containers after delivery.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the customer is happy with the delivery, the driver can proceed to job completion by moving to the ''Job Details'' tab and pressing the '''Complete''' button available there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods, although this can be changed on a per job type or per job group basis.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicle Checks will be configured for the end of the load as well as the start of the load. These will be identical to the checks configured against the vehicle at the start of the load. {{Note}} The change specified above to stop completion of vehicle checks within a certian time will also apply to the vehicle checks at this stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unplanned Ad-Hoc Orders ==&lt;br /&gt;
Some orders are missed, either by not being planned or not keyed into the system, etc. If this occurs and the customer complains asking where there order is, on occasion a territory manager will deliver the goods. These drivers will not be given a device, however there is still the requirement to transfer the order to WEBFLEET. &lt;br /&gt;
&lt;br /&gt;
In order for this to occur, the order must either be planned onto a route within Sage and sent on this new route, or the order should be sent singly to ''CALIDUS'' ePOD, then a new load created within the ePOD Admin system and the order assigned to it. &lt;br /&gt;
&lt;br /&gt;
In order to then transfer this to WEBFLEET, there are several options:&lt;br /&gt;
* Assign the load to a driver specifically for this purpose, then log on to the mobile application on a device, selecting the correct vehicle at logon, and pick up the load. This will mark the load as in progress and send the instruction to WEBFLEET.&lt;br /&gt;
* Change the ePOD Admin application to allow an order to be set to in progress. This would then prompt for the vehicle to be entered for the load and send the job to WEBFLEET.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Allow Admin to set a load in progress.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* Completing the order in WEBFLEET will not complete the order or load in ''CALIDUS'' ePOD.&lt;br /&gt;
* If the loads for these ad hoc orders are not completed through the ePOD mobile application, these loads will be left on the system and never completed, unless Sage explicitly sends through a deletion request.&lt;br /&gt;
* If the loads for these ad hoc orders are not allocated to a vehicle configured in WEBFLEET (i.e. a real fleet vehicle) the information will not be transferred to WEBFLEET.&lt;br /&gt;
* Setting this load to in progress (either by starting it through the mobile application or through the Admin Loads screen will set any other load for this vehicle back to pending status.&lt;br /&gt;
&lt;br /&gt;
It is recommended that the operation choose to complete these jobs through the standard mobile device application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within ePOD has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text (based on job type)&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Collection jobs will produce this format, but will replace the text 'Delivery' with the text 'Collection'. If an additional Collection note format is required that exceeds this stated change, additional modifications may be required that may increase the cost of this change, or an additional change may be raised with OBS Logistics for a new POC format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into ePOD and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer&lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires a Nokia Maps account included in the contract&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customers delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality uses HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Document Management ===&lt;br /&gt;
It is a Zenith optional requirement to upload further documents pertaining to orders (for example, an invoice document and backing sheet) into the system, to be displayed on the Portal in the same way as the POD. There must also be functionality to download the documents.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Upload additional documents.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A new ''Documents'' tab will be added to the Order Enquiry Results/Order Details page. This tab will show a table of all externally-uploaded documents. Note that internal POD documents (i.e. from ''CALIDUS'' ePOD) will not appear on this page, but are accessible through the existing POD button.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results to have Documents tab added to the right''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clicking on the document will open the document through the user's browser. Depending on the file type, the browser and the applications installed on the user's computer, an external application may be opened to view the document. These applications may also allow saving of the documents. The documents may also be saved from Portal by right-clicking on the file in the list and selecting 'Save Target As...' - note that this functionality is dependent on the user's browser and security settings. Note that documents may not be able to be opened at all - this is dependent entirely on the computer accessing Portal and the applications installed on it.&lt;br /&gt;
&lt;br /&gt;
This tab will also have the facility to upload a single document for this order. The upload will allow the user to select a document type (initially limited to 'Invoice' and 'Backing Sheet', extendible at a later date) and upload a document, similar to the existing Portal upload process.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_Portal_Upload.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenith will be able to upload documents in bulk to ''CALIDUS'' Portal directly by uploading files through FTP onto the Portal server filesystem from another machine (i.e. not through the ''CALIDUS'' Portal screens). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} This change allows for a single document upload through the Portal screens, and for a batch upload to be completed via FTP - if a batch upload is required through the Portal screens, additional development will be required.&lt;br /&gt;
&lt;br /&gt;
If uploaded documents are not of the correct type or format, they may not be found and displayed on the list - it is the responsibility of the uploading user or system to ensure that they are of the correct type and name, and (for FTP uploads) are placed in the correct filesystem location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uploaded external documents will be cleared from ''CALIDUS'' Portal when older than 90 days.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Reporting|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=4.5|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=Allow Scanning of alternate Product Barcodes.|Estimate=5.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=11|System=ePOD|Area=Delivery|Description=Identify Pallets that require Product Scanning.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=12|System=ePOD|Area=Delivery|Description=Allow amendment of products in containers after delivery.|Estimate=0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=15|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=1.5|Notes=1.5 days additional to 3 days included in contract&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
== '''Non-Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD|Area=Vehicle Checks|Description=Timer to prevent Vehicle Check Completion.|Estimate=2.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD|Area=Delivery|Description=Display Total Weight/Unique Products.|Estimate=7.25|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows.|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=13|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=14|System=ePOD|Area=Loads Admin|Description=Allow Admin to set a load in progress.|Estimate=2.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=16|System=Portal|Area=Loads Admin|Description=Upload additional documents.|Estimate=3.0|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2669</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2669"/>
		<updated>2015-12-08T15:41:47Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.7}}&lt;br /&gt;
{{#vardefine:Date|8th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
** 35 standard delivery jobs with 10 totes and 20 loose products&lt;br /&gt;
** 10 standard delivery jobs with 10 totes and 20 loose products, plus a single opening job with 20 totes/pallets and 20 loose products.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues. The impact on this to the standard functionality is as follows:&lt;br /&gt;
* There is no facility to see the products within a container (pallet or tote) on the device on a standard delivery.&lt;br /&gt;
* It is not possible to calculate the total weight or total number of unique products on a standard delivery. &lt;br /&gt;
If these restrictions are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the total weight and total unique products for a container or loose products could be sent through from Sage against the container (in the weight and Code 1 fields respectively) and these used to calculate and display on the Job Detail screen on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if shown here. The design in this document shows this displayed on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configured these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Break jobs&lt;br /&gt;
{{Note}} Collections may require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container/Tote ID - unique for the delivery&lt;br /&gt;
** Weight - for total weight calculations on Opening Jobs&lt;br /&gt;
** Code 1 - may be used to send total unique products within the container for Opening Jobs&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Collection jobs, different information may need to be required, for example:&lt;br /&gt;
* Special Instructions - Job Instructions will be used to indicate to the driver whether the job is a collection or delivery.&lt;br /&gt;
* Job Group&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. Any modifications of the interface within {{#var:System}}, will fall to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device using their provided user name, password and vehicle. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job you want to complete - the device will display the Job Details page.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing is not allowed. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs. When they arrive at a location they spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Pallet or Tote with multiple products (with only the pallet or tote needing to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list, and to ensure that the device will receive only container information (pallet or tote), without contained products, to reduce the size of the jobs on the device. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
{{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle Checks may be configured for the end of the load. However, this document assumes that the end load checks are provided by the Load End Metrics checks. Regardless, a second check may be configured if required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within {{#var:System)) has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into {{#var:system}} and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer. If this is hosted by OBS Logistics Ltd, this would be expected to be through the OBS Logistics mail server.  &lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires the purchase of a Nokia Maps account. If the system is hosted through OBS Logistics, this cost may be part of a hosting agreement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Loaded.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customer’s delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality requires the use of HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Consolidation|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Cost=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=8.0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Non Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD|Area=Delivery|Description=Display Total Weight/Products|Estimate=2.75|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2668</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2668"/>
		<updated>2015-12-08T12:30:18Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.7}}&lt;br /&gt;
{{#vardefine:Date|8th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
** 35 standard delivery jobs with 10 totes and 20 loose products&lt;br /&gt;
** 10 standard delivery jobs with 10 totes and 20 loose products, plus a single opening job with 20 totes/pallets and 20 loose products.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues. The impact on this to the standard functionality is as follows:&lt;br /&gt;
* There is no facility to see the products within a container (pallet or tote) on the device on a standard delivery.&lt;br /&gt;
* It is not possible to calculate the total weight or total number of unique products on a standard delivery. &lt;br /&gt;
If these restrictions are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the total weight and total unique products for a container or loose products could be sent through from Sage against the container (in the weight and Code 1 fields respectively) and these used to calculate and display on the Job Detail screen on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if shown here. The design in this document shows this displayed on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configured these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Break jobs&lt;br /&gt;
{{Note}} Collections may require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container/Tote ID - unique for the delivery&lt;br /&gt;
** Weight - for total weight calculations on Opening Jobs&lt;br /&gt;
** Code 1 - may be used to send total unique products within the container for Opening Jobs&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Collection jobs, different information may need to be required, for example:&lt;br /&gt;
* Special Instructions - Job Instructions will be used to indicate to the driver whether the job is a collection or delivery.&lt;br /&gt;
* Job Group&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. There are no expected modifications of the interface within {{#var:System}}, but it falls to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device using their provided user name, password and vehicle. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job you want to complete - the device will display the Job Details page.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing is not allowed. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs. When they arrive at a location they spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Pallet or Tote with multiple products (with only the pallet or tote needing to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list, and to ensure that the device will receive only container information (pallet or tote), without contained products, to reduce the size of the jobs on the device. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
{{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle Checks may be configured for the end of the load. However, this document assumes that the end load checks are provided by the Load End Metrics checks. Regardless, a second check may be configured if required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within {{#var:System)) has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into {{#var:system}} and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer. If this is hosted by OBS Logistics Ltd, this would be expected to be through the OBS Logistics mail server.  &lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires the purchase of a Nokia Maps account. If the system is hosted through OBS Logistics, this cost may be part of a hosting agreement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Loaded.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customer’s delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality requires the use of HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Consolidation|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Cost=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=8.0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Non Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD|Area=Delivery|Description=Display Total Weight/Products|Estimate=2.75|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=Template:REQ_SCR_Header&amp;diff=2667</id>
		<title>Template:REQ SCR Header</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=Template:REQ_SCR_Header&amp;diff=2667"/>
		<updated>2015-12-08T12:28:33Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{note}} To be used with [[:Template:REQ_SCR_Line]] and [[:Template:REQ_SCR_Footer]] only.&lt;br /&gt;
Usage:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{{REQ_SCR_Header}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1px&amp;quot; width=&amp;quot;100%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''SCR#'''&amp;lt;/td&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''System'''&amp;lt;/td&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''Area'''&amp;lt;/td&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; width=&amp;quot;50%&amp;quot;&amp;gt;'''Description'''&amp;lt;/td&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''Estimate (Days)'''&amp;lt;/td&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''Notes'''&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
[[Category:Templates|{{PAGENAME}}]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2666</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2666"/>
		<updated>2015-12-08T11:22:43Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.7}}&lt;br /&gt;
{{#vardefine:Date|8th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
** 35 standard delivery jobs with 10 totes and 20 loose products&lt;br /&gt;
** 10 standard delivery jobs with 10 totes and 20 loose products, plus a single opening job with 20 totes/pallets and 20 loose products.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues. The impact on this to the standard functionality is as follows:&lt;br /&gt;
* There is no facility to see the products within a container (pallet or tote) on the device on a standard delivery.&lt;br /&gt;
* It is not possible to calculate the total weight or total number of unique products on a standard delivery. &lt;br /&gt;
If these restrictions are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the total weight and total unique products for a container or loose products could be sent through from Sage against the container (in the weight and Code 1 fields respectively) and these used to calculate and display on the Job Detail screen on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if shown here. The design in this document shows this displayed on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configured these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Break jobs&lt;br /&gt;
{{Note}} Collections may require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container/Tote ID - unique for the delivery&lt;br /&gt;
** Weight - for total weight calculations on Opening Jobs&lt;br /&gt;
** Code 1 - may be used to send total unique products within the container for Opening Jobs&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Collection jobs, different information may need to be required, for example:&lt;br /&gt;
* Special Instructions - Job Instructions will be used to indicate to the driver whether the job is a collection or delivery.&lt;br /&gt;
* Job Group&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. There are no expected modifications of the interface within {{#var:System}}, but it falls to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device using their provided user name, password and vehicle. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job you want to complete - the device will display the Job Details page.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing is not allowed. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs. When they arrive at a location they spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Pallet or Tote with multiple products (with only the pallet or tote needing to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list, and to ensure that the device will receive only container information (pallet or tote), without contained products, to reduce the size of the jobs on the device. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
{{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle Checks may be configured for the end of the load. However, this document assumes that the end load checks are provided by the Load End Metrics checks. Regardless, a second check may be configured if required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within {{#var:System)) has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into {{#var:system}} and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer. If this is hosted by OBS Logistics Ltd, this would be expected to be through the OBS Logistics mail server.  &lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires the purchase of a Nokia Maps account. If the system is hosted through OBS Logistics, this cost may be part of a hosting agreement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Loaded.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customer’s delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality requires the use of HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=1|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=2|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=3|System=ePOD|Area=Consolidation|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=4|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Cost=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=8|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=8.0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=10|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Non Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR=5|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=6|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=7|System=ePOD|Area=Delivery|Description=Display Total Weight/Products|Estimate=2.75|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR=9|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2665</id>
		<title>REQ 330814 Zenith ePOD Requirements</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=REQ_330814_Zenith_ePOD_Requirements&amp;diff=2665"/>
		<updated>2015-12-08T11:11:59Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v0.7 Review and update&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
{{#vardefine:Client|ZEN}}&lt;br /&gt;
{{#vardefine:ClientName|Zenith Hygiene}}&lt;br /&gt;
{{#vardefine:System|''CALIDUS'' ePOD}}&lt;br /&gt;
{{#vardefine:Doc_Title|''CALIDUS'' ePOD/TTM Solution Design}}&lt;br /&gt;
{{#vardefine:Version|0.7}}&lt;br /&gt;
{{#vardefine:Date|8th December 2015}}&lt;br /&gt;
{{#vardefine:Reference|330814}}&lt;br /&gt;
{{#vardefine:Year|2015}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Doc_Title&lt;br /&gt;
|Client={{#var:ClientName}}&lt;br /&gt;
|System={{#var:System}}&lt;br /&gt;
|Title={{#var:Doc_Title}}&lt;br /&gt;
|Reference=REQ {{#var:Reference}}&lt;br /&gt;
|Version={{#var:Version}}&lt;br /&gt;
|Date={{#var:Date}}&lt;br /&gt;
|Year={{#var:Year}}&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- TOC --&amp;gt; &lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
= Introduction  =&lt;br /&gt;
&amp;lt;!-- The introduction will detail the initial requirements supplied by the client --&amp;gt;&lt;br /&gt;
This document is the {{#var:Doc_Title}}.&lt;br /&gt;
&lt;br /&gt;
== Objective  ==&lt;br /&gt;
The primary purpose of this document is to document the requirements gathered from {{#var:ClientName}}, on 14/10/2015 at the Zenith Hygiene office.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- List all amendments to the requirements here, and reference in final section, e.g. The document also encompasses the follow-up meeting held at X, with Y and Z attending, where the requirements were modified. See the minutes of the meeting referenced as item X in appendix B --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This document has been written in a manner such that it can be approved by non-technical representatives of {{#var:ClientName}} whilst also being of sufficient detail to allow the Functional or Technical Specification phase for this area to begin.&lt;br /&gt;
&lt;br /&gt;
== Scope and Limitations ==&lt;br /&gt;
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY scope or limitations, bulleted. --&amp;gt;&lt;br /&gt;
* The changes will be made in the latest version of the {{#var:System}} system, operating the Android version of the ePOD Client application.&lt;br /&gt;
* Changes relating to information passed through to {{#var:System}} from external systems (i.e. Sage) are subject to analysis and design, which may affect the other changes in this document or generate other work if the process described within this document cannot be followed by the external system.&lt;br /&gt;
&lt;br /&gt;
{{Warning}} The following changes may be out of scope of or not essential to this project, as follows:&lt;br /&gt;
* Multiple Time Windows&lt;br /&gt;
These may be reinstated at a later date at additional cost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some question as the number of products being advised on a jobs for this contract. ''CALIDUS'' ePOD has been tested and sized based on the following standard loads:&lt;br /&gt;
** 35 standard delivery jobs with 10 totes and 20 loose products&lt;br /&gt;
** 10 standard delivery jobs with 10 totes and 20 loose products, plus a single opening job with 20 totes/pallets and 20 loose products.&lt;br /&gt;
Based on this sizing, and with modifications to the standard software (specified elsewhere in this document), the system is capable and reactive to the user with no reported issues. The impact on this to the standard functionality is as follows:&lt;br /&gt;
* There is no facility to see the products within a container (pallet or tote) on the device on a standard delivery.&lt;br /&gt;
* It is not possible to calculate the total weight or total number of unique products on a standard delivery. &lt;br /&gt;
If these restrictions are not acceptable, further modifications to the software may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the total weight and total unique products for a container or loose products could be sent through from Sage against the container (in the weight and Code 1 fields respectively) and these used to calculate and display on the Job Detail screen on the device.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Calculating the total weight and total unique products for a job is a task that will affect the performance of the display of the job list. Due to the high volume of data being sent through (in numbers of jobs, containers and products), this will lead to the performance of the display of the job list being hampered if shown here. The design in this document shows this displayed on the Job Details screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the high volume of data being sent to the device, the automatic load updater will be slow. While this is updating data (from the Job List and Details screens), the application will delay in responding to user touches. An indicator will show when this update is occurring to prevent non-responsiveness of the application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request Load Start/End Metrics if configured to do so. There is no option to configured these drivers to be allowed to skip these metrics. If this is required, a further change may be required at additional cost.&lt;br /&gt;
&lt;br /&gt;
For crew members swapping jobs with a driver, the device will by standard request vehicle defect checks be completed if configured for the vehicle. It is recommended that a 'CREW' vehicle be used with checks configured with no questions, and the crew members encouraged to use this in lieu of the specific vehicle. The driver should still use the specific vehicle when logging on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- ANY other systems? e.g. does this link to TTM, WMS, 414, 770, etc? --&amp;gt;&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
&amp;lt;!-- NEW PAGE --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Client Requirements =&lt;br /&gt;
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the SCRs required for this to be achieved. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Any standard processes should be referenced here and in the references section --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Operational Overview ==&lt;br /&gt;
Zenith Hygiene are the UK's largest independent manufacturer and supplier of cleaning and hygiene chemicals and ancillary products.&lt;br /&gt;
&lt;br /&gt;
General information gathered from sales meetings:&lt;br /&gt;
*	The Primary tracking reference for Zenith is the delivery note number.&lt;br /&gt;
*	There are potentially 500 items on one order.&lt;br /&gt;
*	UAT scheduled for January.&lt;br /&gt;
*	The implementation roll-out will be depot by depot.&lt;br /&gt;
*	Zenith have their own internal IT team and will develop their interface to map to the EPOD format.&lt;br /&gt;
*	Orders are generally 2 types:&lt;br /&gt;
** Opening Orders - full stocking of a premises, up to 500 products, predominantly in totes and pallets, with some loose product.&lt;br /&gt;
** Standard deliveries to a premises, predominantly in totes, with some loose product.&lt;br /&gt;
&lt;br /&gt;
Devices&lt;br /&gt;
*	Android operating system&lt;br /&gt;
*	There is a very high level of scans, so an integrated barcode scanner must be available on the hardware. &lt;br /&gt;
*	Devices to be decided in November. {{Warning}} Matt Turner to advise in SDD what hardware to buy and when it must be ordered by.&lt;br /&gt;
*	There are currently internal questions from Zenith as to where the labels and barcodes will be generated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General System Overview ==&lt;br /&gt;
The core systems are Sage and DPS, with OBS Logistics' systems providing execution ({{#var:System}}) and order tracking (''CALIDUS'' Portal).&lt;br /&gt;
*	Orders come into Sage.&lt;br /&gt;
*	Sage interfaces the orders to DPS, for Routing purposes, then back to Sage.&lt;br /&gt;
*	Sage interfaces routes and orders to {{#var:System}} (trigger to be defined).&lt;br /&gt;
*	{{#var:System}} sends driving instructions to TomTom on demand.&lt;br /&gt;
*	{{#var:System}} updates ''CALIDUS'' Portal's Track and Trace module (TTM) with information for order tracking.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Import ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All jobs of any type will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, such as:&lt;br /&gt;
* Driver Signature.&lt;br /&gt;
* POC/POD document format.&lt;br /&gt;
* POC/POD business address and logo.&lt;br /&gt;
* Terms and Conditions displayed.&lt;br /&gt;
The Job Groups will be defined and agreed in advance between the back-end software providers and OBS Logistics. &lt;br /&gt;
&lt;br /&gt;
It is expected that there will need to be at least three Job Group configurations:&lt;br /&gt;
* Normal Deliveries with Pricing&lt;br /&gt;
* Normal Deliveries without Pricing&lt;br /&gt;
* Opening Deliveries with Pricing&lt;br /&gt;
* Opening Deliveries without Pricing&lt;br /&gt;
* Break jobs&lt;br /&gt;
{{Note}} Collections may require a different Job Group, depending on the functionality required.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Jobs without Pricing may be sent with 0 cost per unit, which will then display as 0 on the POD note - if this is acceptable, this means that fewer job groups need to be created and maintained.&lt;br /&gt;
&lt;br /&gt;
If Job Groups are sent to {{#var:System}} that have not been created in advance, the interface will create them as a skeleton record, defaulting the configuration. &lt;br /&gt;
&lt;br /&gt;
The exact confirmation of the Job Group configuration will be decided at implementation stage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Jobs and Loads themselves will be interfaced with the data required to complete the jobs. This will be mapped outside of this document.&lt;br /&gt;
&lt;br /&gt;
Details for each Delivery job include:&lt;br /&gt;
* Route ID will be sent through as the driver and a batch number or Drivers name and Date to keep the Load ID within ''CALIDUS'' ePOD unique.&lt;br /&gt;
* Job References, such as Delivery Number (which will be the unique job reference) and Purchase Order Number&lt;br /&gt;
* TM (Territory Manager - sent as the Sales Contact&lt;br /&gt;
* Customer Details:&lt;br /&gt;
** Account Number&lt;br /&gt;
** The addresses shown on the POC and POD Notes can be a single customer address (expected to be the account depot address) and a job address (expected to be the final delivery or collection address).&lt;br /&gt;
** Email addresses are required for the customers requesting POD notes to be immediately emailed to them upon confirmation of collection or delivery.&lt;br /&gt;
* Consolidation - When delivering orders, there could be multiple deliveries per address. Consolidation of orders at delivery/collection is required. This may be controlled manually by the driver, but is more commonly controlled by the jobs being linked together on the Route received by ePOD from Sage.&lt;br /&gt;
* An Owner must be specified against each job. It is expected that this will be the same for all jobs and will be agreed during the mapping exercise.&lt;br /&gt;
* Container (Pallet and Tote) information to include:&lt;br /&gt;
** Container/Tote ID - unique for the delivery&lt;br /&gt;
** Weight - for total weight calculations on Opening Jobs&lt;br /&gt;
** Code 1 - may be used to send total unique products within the container for Opening Jobs&lt;br /&gt;
* Product Information to include:&lt;br /&gt;
** Product Code&lt;br /&gt;
** Product Description - These are 40 characters within {{#var:System}} - this is consistent with the length supported by Sage.&lt;br /&gt;
** Product quantities regarding Ordered and Planned Delivered quantities are required.&lt;br /&gt;
** Unit Price - May be zero for items that require no pricing on the POD note.&lt;br /&gt;
** Weight&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Collection jobs, different information may need to be required, for example:&lt;br /&gt;
* Special Instructions - Job Instructions will be used to indicate to the driver whether the job is a collection or delivery.&lt;br /&gt;
* Job Group&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a requirement for a Driver to be advised of a break. Zenith can potentially send a 'Break' job through to {{#var:System}} with dummy customer details etc. Zenith to confirm whether this is possible. In this instance, the following will be required:&lt;br /&gt;
* Special instructions &lt;br /&gt;
* A dummy customer (e.g. BREAK) to define break.&lt;br /&gt;
* A dummy Address Line 1 and Post Code, as these are always required.&lt;br /&gt;
* No item (container or product) details.&lt;br /&gt;
* A specific Job Group, as no Signatures will be required for these jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} OBS Logistics have created standard Interfacing documentation and this will be passed to the Sage development team. At this time, no mapping exercise has started. There are no expected modifications of the interface within {{#var:System}}, but it falls to OBS Logistics to specify and control the modifications to external systems.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=ePOD-Sage Integration meetings and specification.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are additional interfaces to {{#var:System}} in order to keep standing data in line within the system, for example:&lt;br /&gt;
* Drivers - used to allocate loads to drivers&lt;br /&gt;
* Vehicles - used to allocate loads to tractors/trailers/vehicles&lt;br /&gt;
* Reason Codes - used when exceptions are encountered (cancelling jobs, containers, products, changing quantity)&lt;br /&gt;
Each of these items can be agreed in advanced or administered within {{#var:System}}, negating the need for a developed interface. Furthermore, if drivers are assigned to a Load on a message and are not in {{#var:System}}, the interface will create them as a skeleton record, with the User ID as the Driver ID sent in, and the Name and Password defaulted, with default access created.&lt;br /&gt;
As part of the interface mapping exercise, this standing data will be agreed, regardless of whether the interfaces above are implemented within Sage. &lt;br /&gt;
&lt;br /&gt;
{{Note}} It is expected that the standing data will not be transferred through from Sage to {{#var:System}}. It will be a manual process to keep both systems in line. At a later data Zenith may perform development to send standing data to {{#var:System}}. There are internal questions within Zenith regarding the high turnover of drivers due to agency workers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Routes (Loads) must be allocated to a driver and/or vehicle for them to be picked up by the devices. If this cannot be achieved by Sage or any routing systems attached to it, then the {{#var:System}} Admin system (Load or User screens) may be used to manually allocate drivers to loads.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once Order and Trip information is received into {{#var:System}}, ''CALIDUS'' Portal TTM (the Track and Trace module) will be kept up to date with tracking events. &lt;br /&gt;
&lt;br /&gt;
It is a requirement to send an email to the customer with a link to ''CALIDUS'' Portal TTM for tracking purposes. On receipt of the original order information, ''CALIDUS'' Portal TTM will initiate this email to the email address associated to the job's address.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Customer Tracking Email&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Details of the configuration of this are shown in section [[#Track and Trace|Track and Trace]] later in this document.&lt;br /&gt;
&lt;br /&gt;
When this information configured on the Order or Trip Creation event, this will trigger the email.&lt;br /&gt;
&lt;br /&gt;
Sample email:&lt;br /&gt;
 From: Orders@Zenith.co.uk&lt;br /&gt;
 Subject: Your Zenith Order X123 is in progress&lt;br /&gt;
 Body:&lt;br /&gt;
 Jack Jones,&lt;br /&gt;
 Please track your order through the following link:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://.../&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 If you have any issues, please contact the Zenith team on …&lt;br /&gt;
 &lt;br /&gt;
 Yours,&lt;br /&gt;
 The Zenith Delivery Team&lt;br /&gt;
 &lt;br /&gt;
 Note: This is an unmonitored email account - please do not reply to this email.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The ''CALIDUS'' ePOD system provides functionality to handle the process of Proof of Delivery electronically. The system aids this process by providing both a management interface and a client application for use completing tasks.&lt;br /&gt;
The system supports three job types at this point which encompass the functionality to complete many more tasks with them. At this point the system can be used to complete and record; Deliveries, Collections and Services.&lt;br /&gt;
&lt;br /&gt;
The ePOD administration software is a web-based application that handles all of the administrative side of the ePOD devices. &lt;br /&gt;
&lt;br /&gt;
The purpose of the application can be broken down into the following sections:&lt;br /&gt;
&lt;br /&gt;
* To create and maintain users of the ePOD devices.&lt;br /&gt;
* To create and maintain reference data for the system (e.g. Reason Codes, Vehicles, Customers).&lt;br /&gt;
* To create Jobs of all types and group them together onto Loads.&lt;br /&gt;
* To assign Loads to Users.&lt;br /&gt;
* To view the Jobs and Loads created.&lt;br /&gt;
* To print or email a POD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} If loads are not assigned to Drivers or Vehicles through the Sage interface, {{#var:System}} provides a facility to manually assign Loads to drivers, through the following mechanisms:&lt;br /&gt;
* Through the Load, assigning a user directly&lt;br /&gt;
* Through the User, selecting from any Pending Load.&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Users2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_LoadAssign1.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning a User to Loads''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:EPOD_Load2.PNG|border|600px]]&lt;br /&gt;
[[file:EPOD_Load3.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Assigning Loads to a user''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vehicles will be assigned automatically as the driver logs on to the device application and confirms which vehicle they are using.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standing Data (i.e. Vehicles, Reason Codes, Users) may be uploaded in mass through the appropriate maintenance screens - XLS templates may be downloaded from the screens. {{Note}} If enabled, Postponement reason codes may be maintained through the Reason Codes maintenance screen an uploaded through templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If required and enabled, Postponement Reason Codes will be shown in the Jobs maintenance screen detail pop-up. {{Note}} This is optional and may not be required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A full guide to the use of the system can be found referenced in [[#Appendix A: Table of SCRs and Ballpark Estimates|Appendix A]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The POD note format requires Pricing and VAT information for some customers. This will require some Admin changes to support this.&lt;br /&gt;
* A new VAT Rates maintenance screen.&lt;br /&gt;
* The Product/Container screen must be modified to allow entry of Unit Price and VAT Rate&lt;br /&gt;
* The Job Group Maintenance screen must be modified to allow maintenance of a flag to control whether pricing information is used for jobs in this group.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Pricing.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDA Login ==&lt;br /&gt;
The application will have a customised style created for Zenith Hygiene, which will include:&lt;br /&gt;
* A blue colour scheme&lt;br /&gt;
* The logo on the login page.&lt;br /&gt;
* A larger quantity and appropriate level of information on the Product list&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Create customer-specific style on device.&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Login1.png|''Login''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, the layout of certain tables may be modified if required, and confirmed before development begins on the project work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The drivers will be provided a user-name and password, and the loads will be allocated to specific drivers, ensuring that they can complete only the loads required. The users and their passwords must be configured within {{#var:System}}.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A driver logs on to a device using their provided user name, password and vehicle. The device will remember the last used User name and Vehicle, but will always require that the password is entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vehicle Checks ==&lt;br /&gt;
When log-in is complete, the device will prompt the driver for the vehicle checks required. The content and frequency of these checks is configurable, from the {{#var:System}} Admin system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks3.png|''Vehicle Checks Sample''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks4.png|''Sample 2''&lt;br /&gt;
File:REQ_330814_PDA_VehicleChecks5.png|''Sample 3''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Vehicle checks will be based on the information already provided and will include:&lt;br /&gt;
* Fuel Tank Level - a drop-down list of options, requiring selection of 1/4, 1/3, 3/4 or Full&lt;br /&gt;
* First Aid Kit&lt;br /&gt;
* Tyres&lt;br /&gt;
* Lights&lt;br /&gt;
* Oil&lt;br /&gt;
* Water&lt;br /&gt;
* Windows&lt;br /&gt;
* Mirrors&lt;br /&gt;
* COSHH Manual&lt;br /&gt;
* Vehicle Defects - a text entry box&lt;br /&gt;
&lt;br /&gt;
All questions (except Fuel Tank Level and Vehicle Defects) are expected to be required entry, check-box only, to allow the user to confirm that the checks have taken place. Fuel Tank level will be required entry of a drop-down list. Vehicle Defects will be an optional entry of free text.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle checks must be completed before the user is allowed to continue - there will not be an option to postpone Vehicle Checks.&lt;br /&gt;
&lt;br /&gt;
{{Note}} Completed vehicle checks can be viewed through the {{#var:System}} Admin screen, which also allows some selection criteria (by vehicle, user and date). These completed vehicle checks can also be exported, either by request through a web service request, or automatically exported. Both methods export the completed vehicle checks in a standard XML format.&lt;br /&gt;
&lt;br /&gt;
No signature is prompted for by the device during vehicle checks - the user name and password will have already ensured that the user is tagged as the checker at this time.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The Vehicle checks prompted for are the same for all vehicle types. If some questions are not applicable to some vehicle types, the question may be configured to be optional and/or have a &amp;quot;N/A&amp;quot; answer attached to them that the driver may select. It is also possible to have specific vehicle checks for specific vehicle types, and it is recommended that this is done for a 'CREW' vehicle, used for crew members when swapping jobs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Obtain Workload/Job List==&lt;br /&gt;
When vehicle checks are complete, the assigned work-list will be downloaded onto the device, showing all the jobs in sequence on a Job List screen. If no workload has been assigned to the Driver (or vehicle), the device will tell the user that there is no work available. The driver can exit, or try to download again. If the driver has no assigned load, but is sharing work from another driver, an option to Swap Jobs is available here - see section [[#Job Swap|Job Swap]] later for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once a Load has been downloaded to the device, the device can optionally request entry of Metrics at this time. It is expected that this would contain the following checks:&lt;br /&gt;
* ODO - Required numeric entry&lt;br /&gt;
* Load Secure Visual Check &lt;br /&gt;
* Sack Barrow on Vehicle&lt;br /&gt;
All checks are expected to be required entry, and all except ODO will be check-box only. ODO will be a numeric entry. Load Metrics must be completed before the trip may be started.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadStart2.png|''Load Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the metrics are complete (or if there are no metrics configured), the device will display the details of the load in a Job List.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobList1.png|''Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The list of the jobs on this load will show the following:&lt;br /&gt;
*  Job Reference - configured to be one of the following:&lt;br /&gt;
**         Job ID - ePOD internal unique job reference &lt;br /&gt;
**         Job Code - as mapped from Sage&lt;br /&gt;
**         Cust Ref - as mapped from Sage &lt;br /&gt;
**         SO Ref - as mapped from Sage&lt;br /&gt;
**         Ext Ref - as mapped from Sage&lt;br /&gt;
*  Job Type - Collection/Delivery&lt;br /&gt;
*  Customer Name - Bold&lt;br /&gt;
*  Planned Date/Time&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen will display the status of the jobs on the load through a coloured outline, as follows:&lt;br /&gt;
* Red - Cancelled&lt;br /&gt;
* Green - Completed&lt;br /&gt;
* Blue - Completed (with amendments)&lt;br /&gt;
* Yellow - In Progress&lt;br /&gt;
* None - Pending/Incomplete&lt;br /&gt;
Note that this status is also displayed prominently in the Job Details screen (following).&lt;br /&gt;
&lt;br /&gt;
The jobs are displayed in the sequence in which they should be completed, with the first job selected. However, the jobs can be viewed in any sequence by clicking the line of the job you want to complete - the device will display the Job Details page.&lt;br /&gt;
&lt;br /&gt;
The '''Menu''' button can be used here to allow the following options:&lt;br /&gt;
*    Show All / Outstanding Jobs - Toggle between showing all or only incomplete jobs.&lt;br /&gt;
*    Refresh - Refresh the Load/Work-list&lt;br /&gt;
*    Consolidate or Deconsolidate groups of jobs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The system can be configured to control allowing the drivers' ability to complete jobs out of sequence, as follows:&lt;br /&gt;
* No re-sequencing of jobs  - this is not allowed by the driver - the jobs must be completed in the order planned, or cancelled if they cannot be completed. &lt;br /&gt;
* Confirm re-sequencing allowed - this requests the user to confirm first.&lt;br /&gt;
* Always allowed - no confirmation.&lt;br /&gt;
This configuration will be decided at the point of implementation, but is expected that re-sequencing is not allowed. Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If any jobs have been added to a Load while the load is in progress, the ''Refresh'' option (which also is timed to happen on a regular interval) will get the details of the new job and add it to the job list, showing the user a summary of the job(s) added. This functionality will also pick up any amendments to the jobs, for example, if quantities have been amended or products have been added/removed. This can also be triggered by long-pressing against the label showing the load identifier on the screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time, by long-pressing on the job in the table and choosing ''Cancel'' from the pop-up options. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list.&lt;br /&gt;
&lt;br /&gt;
If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. In the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
The system may be configured for Image Capture in the following ways:&lt;br /&gt;
* Force Image Capture at all times when cancelling or changing quantity (i.e. at Job and Detail level)&lt;br /&gt;
* Optional Image Capture at all times.&lt;br /&gt;
Separate to the above configuration, Image Capture at the end of a job (if enabled) may be configured to be optional or required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver may choose to consolidate jobs together, to process them together for speed. This is available through several options on the device, allowing:&lt;br /&gt;
* Manual consolidation, by selecting all jobs to be consolidated individually, accessible through the ''Consolidate'' menu option. &lt;br /&gt;
* To group single jobs with other consolidations, through the ''Create Group'' option accessed when long-pressing against a job or consolidated group. &lt;br /&gt;
Additionally, jobs may already be consolidated together when the load was created - this is expected to be the case for the appropriate jobs received from Sage.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
When consolidated jobs are present, a single line is shown summarising the information from all the jobs (i.e. total number of consignments, etc). These can be seen in more details when completing the job (see later in this document).&lt;br /&gt;
&lt;br /&gt;
The driver also has access to several functions to deconsolidate consolidated groups of jobs:&lt;br /&gt;
* Singly, by selecting the job to split out, through the ''Deconsolidate'' menu option.&lt;br /&gt;
* Breaking the entire group back to single jobs, through the ''Break Group'' option accessed when long-pressing against a consolidated group.&lt;br /&gt;
{{Note}} This functionality can be disabled if not required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is a requirement from Zenith Hygiene to postpone a job, and enter a reason code for this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Postpone Job with Reason Code&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If enabled, an option to ''Postpone Job'' will be available when long-pressing against a job in the list. If selected, the driver will be taken to the Exception screen, where they will be provided a list of Postponement reason codes only and an optional comment box. If confirmed, the job will be marked as Postponed in the list, and other jobs may then be started ahead of it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an extension to this, it is a future requirement to support multiple delivery windows within Sage and the ''CALIDUS'' suite of products. This is out of scope of this project at this time. When required, a separate change request will require raising with OBS Logistics to add this functionality.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Multiple Time Windows&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Swap ==&lt;br /&gt;
Drivers go out in pairs. When they arrive at a location they spread the work between them. This cannot be planned by Sage. To achieve this, {{#var:System}} provides Job Swap functionality in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user who has not been provided a Load can swap jobs from another driver's load - in this case, a new load will be created for the driver.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap1.png|''Job Swap - No Load''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap2.png|''Job Swap - Enter Swap Load''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A user that has been provided a load can still swap jobs - this is available from the menu on the Job List screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap6.png|''Job Swap menu from Job List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user will then be prompted to enter the Load from which the jobs are being swapped, as above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will display a list of jobs from the indicated load.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap3.png|''Job Swap List''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The user can select the jobs to be swapped, or can scan a container (Pallet or Tote) to select the job delivering that container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once all jobs have been selected for swapping, the user will click '''Swap Jobs'''. This will copy the jobs from one load to the other. For Delivery jobs, this will create a Collection jobs on the driver's load. These must be completed as normal collections to indicate that all the items have been swapped correctly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobSwap4.png|''Job List showing new jobs''&lt;br /&gt;
File:REQ_330814_PDA_JobSwap5.png|''Job confirming swap''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The two loads will be updated in the Admin system to show that the jobs have been swapped.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Swapped jobs (deliveries or collections) will be completed as normal jobs, as shown in the following sections.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will also create a Return to Depot job - this is created to keep the load open for more potential swaps later in the trip. This may be completed after all jobs on the load are complete.&lt;br /&gt;
&lt;br /&gt;
When a new load is created for a crew member for the swapped jobs, the device will require entry of load start metrics, if configured for the operation. Additionally, when the swap load is complete, Load End metrics will be requested if configured. If this is required to be removed for Job Swap loads, this will require further development at additional cost. This has not been specified in this document.&lt;br /&gt;
&lt;br /&gt;
When a crew member logs onto the application, if they choose a vehicle they will be prompted for vehicle checks. This can be disabled by creating a 'CREW' vehicle on {{#var:System}}. This will be configured to require no vehicle defect checks. The crew members should be encouraged to use this vehicle for job swapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Details ==&lt;br /&gt;
Selecting a job from the Job List will show the user the job report and customer contact details (on a Job Details screen). The user can back out of the selected Job and view any Job on the list. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail1.png|''Job Details - Address and Contact''&lt;br /&gt;
File:REQ_330814_PDA_JobDetail2.png|''Instructions''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The screen has several Tabs, showing:&lt;br /&gt;
*    The Job Type (Collection, Delivery, Service)&lt;br /&gt;
*    The customer details (Customer Code, Name, Address and Postcode)&lt;br /&gt;
*    The contact information (Contact name and number)&lt;br /&gt;
*    The Instructions for the job&lt;br /&gt;
Clicking on the tabs will display the information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the jobs are consolidated, the '''&amp;lt;''' and '''&amp;gt;''' buttons can be used to move between the all the consolidated jobs, to see any specific details. The ''Instructions'' tab will show all instructions for all the jobs, as well as any additional information passed through for the job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Instructions tab will be modified to display the total weight of all the products, and the count of unique products on the job or jobs.&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Display Total Weight/Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_JobDetail3.png|''Total Weight/Unique Products display''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to contact the customer (through text or phone). &lt;br /&gt;
&lt;br /&gt;
When the user has selected their Job, they can choose the Job with the '''Start Job''' button. &lt;br /&gt;
&lt;br /&gt;
If there have been instructions provided on the Job, the device will switch to the Instructions tab, to force the user to see the instructions before starting.&lt;br /&gt;
&lt;br /&gt;
When a Job is successfully started, this will take the Job to 'In Progress' status.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jobs can be cancelled by the driver at this time by clicking the '''Cancel Job''' button. The user will be prompted to enter a reason why this job is being cancelled, and optionally take a picture. If a job is confirmed cancelled, the device will show the Job List again with the cancelled job removed from the list. If enabled, the cancellation option will also show Postponement reason codes, clearly labelled as such in the drop-down list of reasons. As before, in the case that a postponement reason code is selected rather than a cancellation reason code, the driver will be allowed to optionally enter a comment, and the option to take an image will be removed. If confirmed, the postponed job will not be removed from the list, but will instead be marked as Postponed - see later for more information on Postpone Jobs.&lt;br /&gt;
Note that, if enabled, Postponed jobs will not prevent starting a job later in the sequence than the postponed job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen allows the user to navigate to the customer's address (available only after choosing to start the job). &lt;br /&gt;
&lt;br /&gt;
The device will use any navigation application installed on the device for this navigation. It is expected that this will be through the TomTom navigation application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user arrives as the destination, they can indicate this and start processing the Job by clicking the '''Arrive Job''' button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When confirmed complete, the device will move on to the Delivery or Collection process, depending on the job type.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Standard Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery can consist of a Pallet or Tote with multiple products (with only the pallet or tote needing to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following are the standard tabs that are expected to be displayed:&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Delivery1.png|''Job Details Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery2.png|''Containers Tab''&lt;br /&gt;
File:REQ_330814_PDA_Delivery3.png|''Products Tab''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Note}} There is an optional ''User Notes'' tab that can be displayed, allowing the user to enter any notes against the Job before completion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ''Job Details'' tab has multiple sections:&lt;br /&gt;
* Contact information&lt;br /&gt;
* Address information - if supplied, both current address and origin address are shown.&lt;br /&gt;
* Job Instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list may show the following items per line:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
* Total Products&lt;br /&gt;
* Code 1 (a multi-purpose code)&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. At this time, it is expected that the following will be displayed:&lt;br /&gt;
* Container ID&lt;br /&gt;
* Type&lt;br /&gt;
* Status&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all containers required to be delivered on all jobs - containers will only appear once, no matter how many jobs have products in that container. The list will also display the customer code and the number of consignments in this container.&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The system will be configured so that, regardless of whether a pallet or tote contains products, the device will mark all as delivered when the container is confirmed delivered - the user will not be given the option to scan the products in a container.&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Loose Products, clicking on the item in the container list will immediately display the ''Products'' tab, which will display a list of the loose products (i.e. not on a pallet or tote) to be delivered, showing:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The Sequence&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
*    The Item Type&lt;br /&gt;
*    The Unit Type&lt;br /&gt;
It is expected that, as part of the styling process, the layout of this table will be modified (i.e. elements removed, or resized). The data displayed is dependent on the information passed to {{#var:System}} from Sage. It is expected to be:&lt;br /&gt;
*    The Product Code&lt;br /&gt;
*    The full Description&lt;br /&gt;
*    Any Customer Reference associated to this product&lt;br /&gt;
*    The Planned Quantity &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If this is a consolidated job, the list will show all products required to be delivered on all jobs, including an indication of which order this product is for. {{Note}} If the same product is present on two jobs consolidated together, the product will appear twice, to allow accurate recording of quantity delivered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} There is some concern that the quantity of products on a job (estimated as 500) will make the application unstable, due to the memory requirements of building a large Product list, and to ensure that the device will receive only container information (pallet or tote), without contained products, to reduce the size of the jobs on the device. A change to the {{#var:System}} will be required to handle this.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Amendments to handle large numbers of Products&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered by either:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu - the device will direct them to an exception screen where the quantity can be changed, and a reason code entered as to why the quantity is changed. This will allow entry of quantity, and will display the unit type, for clarification. The product description will also be displayed here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opening Delivery Process ==&lt;br /&gt;
Both container and loose product delivery is required within the same job. The delivery will consist of Pallets or Totes with multiple products (with products requiring to be scanned) and also loose products, which will be scanned individually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screens will look as per a normal delivery.&lt;br /&gt;
&lt;br /&gt;
From the ''Containers'' tab, the device will show a list of the pallets or totes that are to be delivered on these jobs.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The ''Containers'' tab will only be displayed if there are Pallets or Totes as part of the delivery. &lt;br /&gt;
&lt;br /&gt;
The Container list will be displayed with the same information as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If there are also loose products to deliver, a Loose Products container will be displayed in the same way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each container on the list can be confirmed as delivered by the same mechanism as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the container ID manually and clicking '''Deliver'''&lt;br /&gt;
* scanning the container ID&lt;br /&gt;
&lt;br /&gt;
When selected in this way, the device will display the products within this pallet or tote only. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Products within the container will then be scanned and marked as delivered in the same way that loose products can be scanned on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
When all products within a container are marked as complete (delivered or cancelled), the device will redisplay the Containers tab and will remove the completed container from the list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a container can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process, the user will have the facility to take a photo against the cancelled container, but this is optional.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Loose Products may be delivered as in a normal delivery, clicking on the Loose Products entry in the container list. The products list will display the same level of information as Loose Products on a normal delivery.&lt;br /&gt;
&lt;br /&gt;
Each product on the list can be confirmed as delivered in the same manner as a normal delivery, as follows:&lt;br /&gt;
* long-clicking on the item in the list and choosing ''Deliver X'' from the pop-up menu. {{Note}} This option can be removed by configuration if not required.&lt;br /&gt;
* entering the product code manually and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
* scanning the product code and clicking ''Deliver X'' from the pop-up menu.&lt;br /&gt;
When marked as delivered, the item will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The driver can change the quantity by choosing ''Change Quantity'' from the pop-up menu in the same way as a normal delivery.&lt;br /&gt;
&lt;br /&gt;
If a product can't be found on the vehicle, it can be removed from the list with the pop-up option ''Cancel''. Again, the exception screen will be shown where the driver can enter the reason why.&lt;br /&gt;
&lt;br /&gt;
{{Note}} During this exception process (either quantity change or product cancellation), the user will have the facility to take a photo against the product changed, but this is optional. Note that this is optional at the driver's discretion, rather than depending on the reason code selected by the driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When all containers and products have been confirmed as delivered or cancelled, the Delivery process will close and the user will be directed to the Job Completion process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Collection Process==&lt;br /&gt;
{{Note}} There is currently no concept of a Collection within Zenith's current version of Sage. All orders will come through as a delivery but will highlight to a driver that it is a collection through the use of Special Instructions against the job. It has been highlighted to Zenith this could cause confusion with the drivers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Break Process ==&lt;br /&gt;
There is no specific Break functionality within {{#var:System}}. &lt;br /&gt;
&lt;br /&gt;
If breaks are interfaced to {{#var:System}} from Sage as Deliveries, they will be displayed and process as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Break1.png|''Job List showing a break''&lt;br /&gt;
File:REQ_330814_PDA_Break2.png|''Details of a Break job''&lt;br /&gt;
File:REQ_330814_PDA_Break3.png|''Instructions of a Break Job''&lt;br /&gt;
File:REQ_330814_PDA_Break4.png|''Completing a Break job''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The job must still be started, arrived and completed as a normal job.&lt;br /&gt;
&lt;br /&gt;
Once completed by pressing the '''Complete''' button, the job will be configured to complete without any signatures (i.e. the following section does not apply to Break jobs).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Job Completion ==&lt;br /&gt;
All jobs will be sent to the {{#var:System}} system with a configuration element known as Job Group - this will define the process to be followed against each job, configuring the following items:&lt;br /&gt;
*    The Terms and Conditions displayed &lt;br /&gt;
*    Customer Signature required&lt;br /&gt;
*    Driver Signature required&lt;br /&gt;
*    Completion document format&lt;br /&gt;
All of these processes are controlled during Job Completion.&lt;br /&gt;
&lt;br /&gt;
{{Note}} At this time, the expectation is that the configuration will require the Customer only to sign for collection and delivery of goods.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The device will prompt for Customer Signature. &lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_Signature1.png|''Signature and T&amp;amp;Cs''&lt;br /&gt;
File:REQ_330814_PDA_Signature2.png|''Containers''&lt;br /&gt;
File:REQ_330814_PDA_Signature3.png|''Products''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signatory will default to the customer contact sent through on the job, but this can be changed. If one is not sent through, the driver will be forced to enter one. &lt;br /&gt;
&lt;br /&gt;
The screen displays several tabs, allowing the user to see:&lt;br /&gt;
* Terms and Conditions, plus any data entry the user is required to confirm. These are configurable. &lt;br /&gt;
* Pallets and Totes collected/delivered.&lt;br /&gt;
* The quantity of loose products only being collected/delivered.&lt;br /&gt;
* If this is a consolidated group of jobs, a further tab will display the Job references.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Terms and Conditions are configurable, but will appear in the same place on the screen (under the signature). Unlimited T&amp;amp;Cs text can be configured, along with check-boxes and data entry. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
It is expected that this process will be modified to allow the user to confirm the email of the contact and the Telephone Number for POD purposes. To achieve this, the Email and Telephone Number will be added to the Terms and Conditions tab.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=Re-key Email/Contact/Tel at Signature&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The process will display the original email and Telephone Number and allow this to be changed. A change has also been requested to confirm the customer contact, which will be through the entry of the Signatory on this screen. For all fields, the server will be modified as part of this change to update the customer record with this information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As each job (or group of jobs) is completed, the information is updated back to the system, with all information captured on the device (actual times, quantities, signatures, images, updated email address, etc) updated. The updates are sent whenever the driver has an internet connection, and may be delayed until that time.&lt;br /&gt;
&lt;br /&gt;
The user will be returned to the Job List screen and the completed Job will be removed from the list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Post-Load ==&lt;br /&gt;
Once all Jobs have been completed, the Load will be marked as completed when the user returns to the Job List screen.&lt;br /&gt;
&lt;br /&gt;
At this time, if configured to do so, the device will prompt the user to enter Load End Metrics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=310px heights=400px perrow=3&amp;gt;&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd1.png|''Load End Metrics''&lt;br /&gt;
File:REQ_330814_PDA_LoadEnd2.png|''Load End Metrics''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The metrics required are expected to be:&lt;br /&gt;
* ODO - Numeric entry&lt;br /&gt;
* Fuel Cost - Numeric entry&lt;br /&gt;
* Litres Bought - Numeric Entry&lt;br /&gt;
* Parking Ticket Number - optional text entry&lt;br /&gt;
All checks will be required, except Parking Ticket Number.&lt;br /&gt;
&lt;br /&gt;
{{Note}} The following checks may also be added if this is required:&lt;br /&gt;
* Delivery Notes Signed/Printed&lt;br /&gt;
* Full Uniform Worn&lt;br /&gt;
* Failures phoned in&lt;br /&gt;
* Checked back at depot&lt;br /&gt;
* Sack Barrow Returned&lt;br /&gt;
All of these metrics are expected to be required entry, check-box only.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Vehicle Checks may be configured for the end of the load. However, this document assumes that the end load checks are provided by the Load End Metrics checks. Regardless, a second check may be configured if required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once complete, the device will attempt to download a new load for the user and/or vehicle. If one has not been provided, the device will confirm this and allow the user to check again or log off the system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== POC/POD Documents ==&lt;br /&gt;
{{Note}} The POD document format is being changed for the purposes of this project. The current format has been provided as a sample, as below:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_POD.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Sample POD Format''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is expected that the new POD format will remove or modify the existing format in some small way. As such, a prototype of how this will look within {{#var:System)) has not at this time been completed. This will be done at functional specification stage. &lt;br /&gt;
&lt;br /&gt;
At this time, the following elements are on the POD format, and can be supported by the {{#var:System}} system, except where indicated.&lt;br /&gt;
&lt;br /&gt;
Header&lt;br /&gt;
* Header with Logo - Fixed&lt;br /&gt;
* Zenith Address/contact information&lt;br /&gt;
* Driver Name&lt;br /&gt;
* TM (Territory Manager) Name&lt;br /&gt;
* &amp;quot;DELIVERY NOTE&amp;quot; - Fixed Text&lt;br /&gt;
* Date&lt;br /&gt;
* Account Number&lt;br /&gt;
* Purchase Order Number&lt;br /&gt;
* Delivery Number&lt;br /&gt;
&lt;br /&gt;
Addresses:&lt;br /&gt;
* INVOICE TO&lt;br /&gt;
* DELIVERY TO&lt;br /&gt;
&lt;br /&gt;
Product List:&lt;br /&gt;
* Product Code&lt;br /&gt;
* Product Description&lt;br /&gt;
* Qty Ord&lt;br /&gt;
* Qty Del&lt;br /&gt;
* Unit Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Total Price {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* Weight&lt;br /&gt;
&lt;br /&gt;
Footer:&lt;br /&gt;
* &amp;quot;HAVE YOU TRIED OUR ON-LINE ORDERING WEBSTORE WWW.ZHGPLC.COM&amp;quot; - Fixed Text&lt;br /&gt;
* Print Name&lt;br /&gt;
* Signature&lt;br /&gt;
* Date&lt;br /&gt;
* NETT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* VAT {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* TOTAL {{Note}} Not displayed if the job is configured to not have pricing information&lt;br /&gt;
* NOTES&lt;br /&gt;
* Footer with logos - fixed.&lt;br /&gt;
&lt;br /&gt;
The POD produced will expect to be paginated to accommodate the quantity of products on a single delivery job.&lt;br /&gt;
&lt;br /&gt;
No images are required to be shown on the POD note, whether they are taken on the device or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The definition of what data maps to which fields on the POD depends on the mapping of the interface of jobs into {{#var:system}} and will be confirmed after discussion with Sage and at functional specification stage.&lt;br /&gt;
&lt;br /&gt;
{{SCR|Reference={{#var:Reference}}|SCRNo={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}&lt;br /&gt;
|Definition=POD Note Format&lt;br /&gt;
|Link=Appendix A: Table of SCRs and Ballpark Estimates&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Data Export ==&lt;br /&gt;
All files (inbound to and outbound from ''CALIDUS'' ePOD) will be transferred using an FTP method. It was noted that at a later stage Zenith would like to use webservices, but will use FTP to start as this is quicker for Zenith.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When jobs have been completed all the job is updated in the {{#var:System}} server, these jobs are then available for exporting to external systems. This is also true of cancelled jobs. All completed and cancelled Jobs may be transferred to Sage through the standard interface. This is a pushed update, sent at a configurable interval, usually every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
*	All shortages at delivery (i.e. when {{#var:System}} cancels or changes the delivered quantity of an item) may go on back order - this depends on the reason for the quantity change.&lt;br /&gt;
*	All cancelled collections/deliveries (i.e. the driver cancels the job) should be manually re-booked within Sage - the interface back to Sage must be confirmed, and this must be handled by the Sage interface.&lt;br /&gt;
There are no expected changes to the existing export format or methodology. The information regarding this has been forwarded to the Sage consultants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For jobs that have been completed, POD documents will be sent to the customer. In this case, the jobs that require this would have the email address populated when the job is sent to {{#var:system}}, or entered an the POD device at confirmation of the delivery. As part of the export, any jobs with this email address will be automatically sent with a PDF attachment of the POD report. Multiple recipients may be supported through the use of comma- or semicolon-delimited lists of emails addresses (the exact delimiter is based on the email server defined for the system's use).&lt;br /&gt;
&lt;br /&gt;
{{Note}} This feature requires access to a mail server for the use of the customer. If this is hosted by OBS Logistics Ltd, this would be expected to be through the OBS Logistics mail server.  &lt;br /&gt;
&lt;br /&gt;
Automatic emails may also be sent to a central email address if required. This may be configured at any time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The {{#var:System}} system may be modified to allow POD notes to be sent via FTP or other file transfer to an external document handling system. This is required for Zenith Hygiene. The files may be images or PDF format, and the name may be configured in several different ways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reporting and Queries ==&lt;br /&gt;
The {{#var:System}} Admin system allows admin users (i.e. non-PD users) the ability to access loads, jobs and product details, as mentioned previously.&lt;br /&gt;
&lt;br /&gt;
When jobs are being processed, the status of the jobs and loads changes to show progress:&lt;br /&gt;
* Pending - not yet assigned to a driver.&lt;br /&gt;
* Assigned - Assigned to a driver, but not yet started. This is highlighted grey.&lt;br /&gt;
* In Progress - Started by the driver. This is highlighted yellow.&lt;br /&gt;
* Complete - Complete by the driver - This is highlighted green.&lt;br /&gt;
* Cancelled - Job cancelled by the driver. This is highlighted red.&lt;br /&gt;
* Complete (With Amendments) - job completed, but not exactly as planned. This is also highlighted green.&lt;br /&gt;
&lt;br /&gt;
POD/POC reports and full product details can be accessed from this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User activity may also be accessed, to show auditing of messages from the user, for example:&lt;br /&gt;
* Log on&lt;br /&gt;
* Vehicle defect checks complete&lt;br /&gt;
* Load picked up&lt;br /&gt;
* Job started&lt;br /&gt;
* Job arrived&lt;br /&gt;
* Job completed&lt;br /&gt;
* Load completed&lt;br /&gt;
* Log off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Track and Trace ==&lt;br /&gt;
''CALIDUS'' Portal TTM (Track and Trace) provides several enquiry and auto-updating screens to allow information to be collated and provided in easy to use formats. The system supports multiple  user-defined groups that control the configuration of a user, allowing the control of data access for various different purposes, for example:&lt;br /&gt;
* End customers&lt;br /&gt;
* Contracts/Owners&lt;br /&gt;
* Customer Service Queries &lt;br /&gt;
* Transport Office&lt;br /&gt;
&lt;br /&gt;
It is expected that ETAs will be shown on the Portal - this functionality requires the purchase of a Nokia Maps account. If the system is hosted through OBS Logistics, this cost may be part of a hosting agreement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of functionality available within ''CALIDUS'' Portal TTM Module - full user guides are referenced in [[#B.1 References|Appendix B]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Trip/Order Enquiry ===&lt;br /&gt;
This screen allows ''CALIDUS'' Portal users to track the status and events held against trips and orders, selecting them through a large variety of parameters.&lt;br /&gt;
&lt;br /&gt;
==== Order Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqParms.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The enquiry responds with a results table summarising the matched orders:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrdEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Enquiry Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Trip Stops, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
*	'''Order Events''' - Order Header / Event information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Trip Enquiry ====&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqParms.PNG|border]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Trip Enquiry Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_TripEnqResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;Trip Enquiry Results&amp;lt;br /&amp;gt;&lt;br /&gt;
These results can be expanded for further details of the Orders, and the order can be clicked to drill-down into specific details of the order. This table data can also be exported to XML format in multiple ways:&lt;br /&gt;
*	'''Manifest''' - Trip/Stop information&lt;br /&gt;
*	'''Manifest/Order''' - Trip/Stop/Order information&lt;br /&gt;
*	'''Order''' - Order Header information&lt;br /&gt;
*	'''Order Detail''' - Order Header / Order Detail information&lt;br /&gt;
&lt;br /&gt;
The screen supports configurable RAG colouration, to highlight trips that are late or incomplete, and ETAs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Order Detail ====&lt;br /&gt;
[[file:REQ_324746_TTM_OrderDetail.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Details''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details can be found of the following:&lt;br /&gt;
*	Events – the Messages received by the LOTS system via WMS, TMS and other systems.&lt;br /&gt;
*	Info – Details of all of the header information stored on the system&lt;br /&gt;
*	Route – Details of the trips/stops that the order is currently assigned to.&lt;br /&gt;
*	SO Details – the Stock details received from the TMS or WMS.&lt;br /&gt;
*	Reasons – Details of the Order level reasons placed against the order.&lt;br /&gt;
*	Map – A map of the current location of the order (if co-ordinates have been supplied by an external system). The Mapping page will only be available to groups where the ‘Mapping’ parameter against the User Group is set to ‘Available’ and where licensing is available.&lt;br /&gt;
*	Notes – Allows the entry of user notes against the order. These are only kept on the Portal system.&lt;br /&gt;
&lt;br /&gt;
If enabled, Postponed jobs will be clearly visible in these screens, as follows:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Events Tab showing the Postponement event - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_OrderDetail_Reasons.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Reasons Tab showing the Postponement reason code - prototype''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Airport Screens ===&lt;br /&gt;
''CALIDUS'' Portal supports several Airport-style screens:&lt;br /&gt;
* Arrive/Depart screen&lt;br /&gt;
* Order Status screen&lt;br /&gt;
Both screens allow for customised parameter entry, and refreshing data at intervals, making them ideal for overhead displays or continuous transport queries&lt;br /&gt;
&lt;br /&gt;
Sample results pages:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_ArrDep.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Arrive/Depart screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_OrderStatus.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Order Status Screen''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Both screens allow the user to drill-down or expand on data to get more details, through pop-ups or further details screens.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Vehicle/Driver GPS Tracking ===&lt;br /&gt;
''CALIDUS'' Portal and ''CALIDUS'' ePOD provide GPS tracking of vehicles and drivers.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrack.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Parameters''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackResults.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Results''&amp;lt;br /&amp;gt;&lt;br /&gt;
[[file:REQ_324746_TTM_GPSTrackMap.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''GPS Tracking Map''&amp;lt;br /&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Tracking Emails ===&lt;br /&gt;
''CALIDUS'' Portal can be configured for automatically triggered emails at certain system or operational events.&lt;br /&gt;
&lt;br /&gt;
Events are configured in the Event Maintenance page:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If enabled, each event has a button which will take the user into the Event Email maintenance page.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_330814_TTM_Events_Email.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Portal Events Maintenance''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Both Subject and Body of the email can be completely defined through a text area. Clicking on the Data Field icon allows data items to be inserted in the text, from the following fields:&lt;br /&gt;
* Contact Name&lt;br /&gt;
* Owner&lt;br /&gt;
* Order Number&lt;br /&gt;
* Booking Reference&lt;br /&gt;
* TMS Reference&lt;br /&gt;
* PO Reference&lt;br /&gt;
* Customer Name&lt;br /&gt;
* Planned Arrival Date/Time&lt;br /&gt;
* Delivered Date/Time&lt;br /&gt;
* Signed By&lt;br /&gt;
* Tracking Link (only Body)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Customer Tracking Gateway ===&lt;br /&gt;
On clicking the tracking link from an external system or email, the customer is asked to enter the consignment reference (the customer reference) they have been provided and the post code for the delivery location of the order being checked. Note that the consignment number can be sent through from the calling system, to help the customer obtain their details but post code must always be entered by the customer as a security measure.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Login.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Enter Consignment''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The gateway then checks the order on the system, matching the customer reference and post code to the information on the system. The search for the order to be checked is not case-sensitive - the gateway will match the entry if entered in upper or lower case, and the postcode entered can be in any format, with or without spacing. If an order is not found that matches the information entered, the screen will display that no information can be found in a pop-up message.&lt;br /&gt;
&lt;br /&gt;
If a unique order is found, the gateway displays a summary of the information on the order being checked, similar to the following:&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Tracking.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Consignment Tracking''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note}} Only information from the order being checked is displayed on this screen, as well as some information relating to times and execution of the Trip on which this order is being delivered. At no time is any information from any other order (on this trip or otherwise) displayed on this screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The screen displays:&lt;br /&gt;
*	The Order Status of the order being checked, which may be one of several items, based on how the systems are being used:&lt;br /&gt;
**	Ordered.&lt;br /&gt;
**	Loaded.&lt;br /&gt;
**	Out for Delivery.&lt;br /&gt;
**	Delivered.&lt;br /&gt;
**	Cancelled&lt;br /&gt;
*	Last Delivery Sequence - The number of the last stop serviced on the trip that is delivering the order being checked. {{Note}} This is only the stop number, not the full address of the last stop serviced.&lt;br /&gt;
*	Your Delivery Sequence - The stop on which the order being checked will be delivered. {{Note}} This is only the stop number, not the full order address - this is displayed below.&lt;br /&gt;
*	Order Reference - The customer's order reference of the order being checked.&lt;br /&gt;
*	Full Address - The full delivery address of the order being checked.&lt;br /&gt;
*	Courier - If known, the courier completing the delivery of the order being checked.&lt;br /&gt;
*	Driver - The full name of the driver completing the trip on which the order being checked is being delivered.&lt;br /&gt;
&lt;br /&gt;
The screen also displays a time-line bar, showing all the statuses the order being checked has passed though. Successfully-completed statuses are coloured green, and the date/time the status was changed (if provided) is displayed under the status on the bar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the order being checked is out for delivery, the screen displays a map showing:&lt;br /&gt;
*	The last known location of the vehicle making the delivery. &lt;br /&gt;
*	The customer’s delivery location&lt;br /&gt;
{{Note}} The last known location of the vehicle making the delivery could be the address of another customer receiving a delivery on that trip. However, no address information or labels are shown against the locations displayed in the map and no information is divulged regarding the reason the vehicle is currently at that location.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the ETA at the location of the order being checked. {{Note}} This functionality requires the use of HERE maps for calculation of the ETA.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If provided to ''CALIDUS'' Portal, this screen can also display the Signatory and Signature on this gateway screen, when the order being checked is marked as Delivered.&lt;br /&gt;
&lt;br /&gt;
[[file:REQ_324746_TTM_Gateway_Signature.PNG|border|600px]]&lt;br /&gt;
&amp;lt;br /&amp;gt;''Gateway - Consignment Signature''&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE YES --&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Appendix A: Table of SCRs and Ballpark Estimates  =&lt;br /&gt;
&amp;lt;!-- If there’s only one system being discussed here, the system column can be removed.&lt;br /&gt;
Ballpark estimates may not be required to be included in this document. If they are, include the column, and note 1. Estimates should be rounded up, and should be produced using the standard mechanism of estimates (i.e. any standard spreadsheet designed to automate the production of estimates). The total line need only be added if the estimates are being produced at this point&lt;br /&gt;
The description should be the description from the text in the main sections. &lt;br /&gt;
The Notes column can be used for many things: grouping optional changes, showing whether the client or OBS originated the gap, etc. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=Sage|Area=Integration|Description=ePOD-Sage Integration meetings and specification.|Estimate=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=Portal|Area=Email|Description=Customer Tracking Email.|Estimate=2.75|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Consolidation|Description=Pricing.|Estimate=10|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Look and Feel|Description=Create customer-specific style on device.|Cost=1|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Delivery|Description=Amendments to handle large numbers of Products.|Estimate=8.0|Notes=OBS Cost&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Reporting|Description=POD Note Format.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Non Essential''' ==&lt;br /&gt;
&lt;br /&gt;
{{ #vardefine: SCR | 0 }}&lt;br /&gt;
{{REQ_SCR_Header}}{{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD/Portal|Area=Exception|Description=Postpone Job with Reason Code.|Estimate=13.5|Notes=2&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD/Portal|Area=Tracking|Description=Multiple Time Windows|Estimate=0|Notes=Out of Scope&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Delivery|Description=Display Total Weight/Products|Estimate=2.75|Notes=&lt;br /&gt;
}} {{REQ_SCR_Line&lt;br /&gt;
|SCR={{ #vardefineecho: SCR | {{ #expr: {{ #var: SCR }} + 1 }} }}|System=ePOD|Area=Signature|Description=Re-key Email/Contact/Tel at Signature.|Estimate=4.5|Notes=&lt;br /&gt;
}} {{REQ_SCR_Footer}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
#Any high level ballpark estimates for development are based on the basic information provided and are subject to detailed design and creation of an SCR.&lt;br /&gt;
#Cost shown is for a full tracking solution within EPOD and Portal. If Portal tracking only is required, the cost in 9d. If Sage is to cancel and reissue a new job, 0d.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- MEDIA LANDSCAPE NO --&amp;gt; &lt;br /&gt;
{{Doc_Appendix&lt;br /&gt;
|Appendix=B&lt;br /&gt;
|Estimate=N&lt;br /&gt;
|Glossary=EPOD&lt;br /&gt;
|Ref1=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291094_EPOD_Admin_User_Guide UG 291094 EPOD Admin User Guide]&lt;br /&gt;
|RefV1=3.0&lt;br /&gt;
|RefDate1=16/10/2014&lt;br /&gt;
|Ref2=[http://172.198.45.54/calidus-assist/EPOD/index.php/UG_291097_EPOD_Client_User_Guide UG 291097 EPOD Client User Guide]&lt;br /&gt;
|RefV2=4.0&lt;br /&gt;
|RefDate2=16/10/2014&lt;br /&gt;
|Ref3=[http://172.198.45.54/calidus-assist/EPOD/index.php/FS_291096_Interface_with_CALIDUS_ePOD FS 291096 Interface with CALIDUS ePOD]&lt;br /&gt;
|RefV3=1.0&lt;br /&gt;
|RefDate3=05/02/2015&lt;br /&gt;
|Ref4=Portal User Guide - TTM&lt;br /&gt;
|RefV4=6.8&lt;br /&gt;
|RefDate4=12/11/2015&lt;br /&gt;
|REQ=0&lt;br /&gt;
|EST=0&lt;br /&gt;
|FS=0&lt;br /&gt;
|TS=0&lt;br /&gt;
|DEV=0&lt;br /&gt;
|ST=0&lt;br /&gt;
|IMP=0&lt;br /&gt;
|Client=&lt;br /&gt;
|Year=&lt;br /&gt;
|FSEST=Y&lt;br /&gt;
|Rev1=Michael Rayner&lt;br /&gt;
|Rev1Title=Zenith Hygiene&lt;br /&gt;
|Rev2=Matt Turner&lt;br /&gt;
|Rev2Title=OBS Logistics&lt;br /&gt;
}}&amp;lt;/div&amp;gt; &lt;br /&gt;
[[Category:{{#var:Client}} REQ]]&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_331463_Add_Load_Fields_to_Transport_Report&amp;diff=2652</id>
		<title>EST 331463 Add Load Fields to Transport Report</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_331463_Add_Load_Fields_to_Transport_Report&amp;diff=2652"/>
		<updated>2015-12-02T11:23:35Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Estimate&lt;br /&gt;
|Supimix_Client_Code=HEW&lt;br /&gt;
|Supimix_Project_Code=DEV&lt;br /&gt;
|Supimix_Site_Code=BSE&lt;br /&gt;
|Supimix_Client_Reference=N/A&lt;br /&gt;
|Supimix_Number=331463&lt;br /&gt;
|The_version_of_the_document=1.0&lt;br /&gt;
|Your_Name=A N Walker&lt;br /&gt;
|Supimix_PO_Reference=None&lt;br /&gt;
|Supimix_Priority=3&lt;br /&gt;
|Date_(DD/MM/YY)=01/12/15&lt;br /&gt;
|Clients_Customer=N/A&lt;br /&gt;
|System_Version_being_changed=3.X&lt;br /&gt;
|Client_Request=Can we have the ID, the Vehicle Registration and the Trailer ID? Add the columns to the front of the report.&lt;br /&gt;
|OBS_Solution=The transport report requires modification to show:&lt;br /&gt;
*	The Vehicle ID&lt;br /&gt;
*	The Vehicle Registration&lt;br /&gt;
*	The Trailer ID.&lt;br /&gt;
&lt;br /&gt;
All of this information will be sourced from the Load, referencing by the Vehicle information for the registration.&lt;br /&gt;
&lt;br /&gt;
The Load will be obtained from the Delivery job.&lt;br /&gt;
&lt;br /&gt;
The new columns will be added to the start of the report, as follows:&lt;br /&gt;
&lt;br /&gt;
[[File:EST_331463_TransportReport.PNG|border|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|Requirements_Days=0&lt;br /&gt;
|Estimation_Days=0.00&lt;br /&gt;
|Functional_Specification_Days=0.50&lt;br /&gt;
|Technical_Specification_Days=0.25&lt;br /&gt;
|Development_Days=0.75&lt;br /&gt;
|Testing_and_Release_Days=0.25&lt;br /&gt;
|Implementation_Days=0.25&lt;br /&gt;
|Project_Management_Days=0.25&lt;br /&gt;
|Year=2015&lt;br /&gt;
|Free_Of_Charge=N&lt;br /&gt;
|Supimix_Client_Code|TEMPLATE=HEW}}&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=Template:EstimateCostDetails&amp;diff=2651</id>
		<title>Template:EstimateCostDetails</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=Template:EstimateCostDetails&amp;diff=2651"/>
		<updated>2015-12-02T11:22:58Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
Usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{{EstimateCostDetails&amp;lt;/nowiki&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Client=Client for estimate rates. Required if an estimate section is to be produced.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Year=Year for estimate rates. Required if an estimate section is to be produced.&amp;lt;br /&amp;gt;&lt;br /&gt;
|REQ=Requirements Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EST=Estimate Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|FS=Functional Specification Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|TS=Technical Specification Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|DEV=Development Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|ST=Testing Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|IMP=Implementation Time. Defaults to zero.&amp;lt;br /&amp;gt;&lt;br /&gt;
|PM=Project Management Time. If omitted, line is not shown on estimate.&amp;lt;br /&amp;gt;&lt;br /&gt;
|FSEST=Y if this estimate is for production in a functional specification. Omit if no separate estimate and functional specification sections are required. If the values in the estimate differ from the functional specification, use the fields EREQ, EEST, EFS, ETS, EDEV, ESTT, EIMP and EPM to identify the Estimate values. If these are omitted, the Functional Specification values in fields REQ, EST, FS, TS, DEV, ST, IMP and PM will be used.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EREQ=Estimate Requirements Time. Defaults to the value specified in REQ if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EEST=Estimate Estimate Time. Defaults to the value specified in EST if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EFS=Estimate Functional Specification Time. Defaults to the value specified in FS if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|ETS=Estimate Technical Specification Time. Defaults to the value specified in TS if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EDEV=Estimate Development Time. Defaults to the value specified in DEV if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|ESTT=Estimate Testing Time. Defaults to the value specified in ST if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EIMP=Estimate Implementation Time. Defaults to the value specified in IMP if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|EPM=Estimate Project Management Time. Defaults to the value specified in PM if omitted.&amp;lt;br /&amp;gt;&lt;br /&gt;
|FOC=Free of Charge - set this to Y to ensure no cost is associated. Defaults to N.&amp;lt;br /&amp;gt;&lt;br /&gt;
|FIXEDCOST=Fixed Cost - set this to a value to ensure only this cost is associated.&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{note}} If on a separate page Ensure that you include the relevant Category tag at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
{{note}} Costs should be numeric. If one is not included, it will default to zero (0).&lt;br /&gt;
&lt;br /&gt;
{{note|This page should be kept up-to-date with the latest cost changes for all clients, otherwise the costs will default to zero (0)}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{#ifeq:{{{Year}}}|2015|&lt;br /&gt;
{{#ifeq:{{{Client}}}|DHLT|&lt;br /&gt;
    {{#vardefine:CostREQ|650}}&lt;br /&gt;
    {{#vardefine:CostEST|650}}&lt;br /&gt;
    {{#vardefine:CostFS|650}}&lt;br /&gt;
    {{#vardefine:CostTS|650}}&lt;br /&gt;
    {{#vardefine:CostDEV|620}}&lt;br /&gt;
    {{#vardefine:CostST|620}}&lt;br /&gt;
    {{#vardefine:CostIMP|650}}&lt;br /&gt;
    {{#vardefine:CostPM|660}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|COO|&lt;br /&gt;
    {{#vardefine:CostREQ|750}}&lt;br /&gt;
    {{#vardefine:CostEST|750}}&lt;br /&gt;
    {{#vardefine:CostFS|750}}&lt;br /&gt;
    {{#vardefine:CostTS|750}}&lt;br /&gt;
    {{#vardefine:CostDEV|750}}&lt;br /&gt;
    {{#vardefine:CostST|750}}&lt;br /&gt;
    {{#vardefine:CostIMP|750}}&lt;br /&gt;
    {{#vardefine:CostPM|750}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|HEW|&lt;br /&gt;
    {{#vardefine:CostREQ|750}}&lt;br /&gt;
    {{#vardefine:CostEST|750}}&lt;br /&gt;
    {{#vardefine:CostFS|750}}&lt;br /&gt;
    {{#vardefine:CostTS|750}}&lt;br /&gt;
    {{#vardefine:CostDEV|750}}&lt;br /&gt;
    {{#vardefine:CostST|750}}&lt;br /&gt;
    {{#vardefine:CostIMP|750}}&lt;br /&gt;
    {{#vardefine:CostPM|750}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|EXL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|DHL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|CERT|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PACE|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|ALS|&lt;br /&gt;
    {{#vardefine:CostREQ|650}}&lt;br /&gt;
    {{#vardefine:CostEST|650}}&lt;br /&gt;
    {{#vardefine:CostFS|650}}&lt;br /&gt;
    {{#vardefine:CostTS|650}}&lt;br /&gt;
    {{#vardefine:CostDEV|650}}&lt;br /&gt;
    {{#vardefine:CostST|650}}&lt;br /&gt;
    {{#vardefine:CostIMP|650}}&lt;br /&gt;
    {{#vardefine:CostPM|650}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|SMF|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PROD|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|LFS|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PART|&lt;br /&gt;
    {{#vardefine:CostREQ|650}}&lt;br /&gt;
    {{#vardefine:CostEST|650}}&lt;br /&gt;
    {{#vardefine:CostFS|650}}&lt;br /&gt;
    {{#vardefine:CostTS|650}}&lt;br /&gt;
    {{#vardefine:CostDEV|650}}&lt;br /&gt;
    {{#vardefine:CostST|650}}&lt;br /&gt;
    {{#vardefine:CostIMP|650}}&lt;br /&gt;
    {{#vardefine:CostPM|650}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|LANE|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|BAG|&lt;br /&gt;
    {{#vardefine:CostREQ|655}}&lt;br /&gt;
    {{#vardefine:CostEST|655}}&lt;br /&gt;
    {{#vardefine:CostFS|655}}&lt;br /&gt;
    {{#vardefine:CostTS|655}}&lt;br /&gt;
    {{#vardefine:CostDEV|655}}&lt;br /&gt;
    {{#vardefine:CostST|655}}&lt;br /&gt;
    {{#vardefine:CostIMP|655}}&lt;br /&gt;
    {{#vardefine:CostPM|655}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|NHS|&lt;br /&gt;
    {{#vardefine:CostREQ|655}}&lt;br /&gt;
    {{#vardefine:CostEST|655}}&lt;br /&gt;
    {{#vardefine:CostFS|655}}&lt;br /&gt;
    {{#vardefine:CostTS|655}}&lt;br /&gt;
    {{#vardefine:CostDEV|655}}&lt;br /&gt;
    {{#vardefine:CostST|655}}&lt;br /&gt;
    {{#vardefine:CostIMP|655}}&lt;br /&gt;
    {{#vardefine:CostPM|655}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;!-- Default charges for 2014 for no client --&amp;gt;&lt;br /&gt;
    {{#vardefine:Message|Unknown costs for client/year ({{{Client|No client}}}/{{{Year|No year}}})}}&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
|}}{{#ifeq:{{{Year}}}|2014|&lt;br /&gt;
{{#ifeq:{{{Client}}}|EXL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|DHL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|CERT|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PACE|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|ALS|&lt;br /&gt;
    {{#vardefine:CostREQ|650}}&lt;br /&gt;
    {{#vardefine:CostEST|650}}&lt;br /&gt;
    {{#vardefine:CostFS|650}}&lt;br /&gt;
    {{#vardefine:CostTS|650}}&lt;br /&gt;
    {{#vardefine:CostDEV|650}}&lt;br /&gt;
    {{#vardefine:CostST|650}}&lt;br /&gt;
    {{#vardefine:CostIMP|650}}&lt;br /&gt;
    {{#vardefine:CostPM|650}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|SMF|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PROD|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|LFS|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PART|&lt;br /&gt;
    {{#vardefine:CostREQ|650}}&lt;br /&gt;
    {{#vardefine:CostEST|650}}&lt;br /&gt;
    {{#vardefine:CostFS|650}}&lt;br /&gt;
    {{#vardefine:CostTS|650}}&lt;br /&gt;
    {{#vardefine:CostDEV|650}}&lt;br /&gt;
    {{#vardefine:CostST|650}}&lt;br /&gt;
    {{#vardefine:CostIMP|650}}&lt;br /&gt;
    {{#vardefine:CostPM|650}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|LANE|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|BAG|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|NHS|&lt;br /&gt;
    {{#vardefine:CostREQ|655}}&lt;br /&gt;
    {{#vardefine:CostEST|655}}&lt;br /&gt;
    {{#vardefine:CostFS|655}}&lt;br /&gt;
    {{#vardefine:CostTS|655}}&lt;br /&gt;
    {{#vardefine:CostDEV|655}}&lt;br /&gt;
    {{#vardefine:CostST|655}}&lt;br /&gt;
    {{#vardefine:CostIMP|655}}&lt;br /&gt;
    {{#vardefine:CostPM|655}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;!-- Default charges for 2014 for no client --&amp;gt;&lt;br /&gt;
    {{#vardefine:Message|Unknown costs for client/year ({{{Client|No client}}}/{{{Year|No year}}})}}&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
|}}{{#ifeq:{{{Year}}}|2013|&lt;br /&gt;
{{#ifeq:{{{Client}}}|EXL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|DHL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|CERT|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PACE|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|ALS|&lt;br /&gt;
    {{#vardefine:CostREQ|650}}&lt;br /&gt;
    {{#vardefine:CostEST|650}}&lt;br /&gt;
    {{#vardefine:CostFS|650}}&lt;br /&gt;
    {{#vardefine:CostTS|650}}&lt;br /&gt;
    {{#vardefine:CostDEV|650}}&lt;br /&gt;
    {{#vardefine:CostST|650}}&lt;br /&gt;
    {{#vardefine:CostIMP|650}}&lt;br /&gt;
    {{#vardefine:CostPM|650}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|SMF|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PROD|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|LFS|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PART|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|LANE|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|BAG|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;!-- Default charges for 2013 for no client --&amp;gt;&lt;br /&gt;
    {{#vardefine:Message|Unknown costs for client/year ({{{Client|No client}}}/{{{Year|No year}}})}}&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Year}}}|2012|&lt;br /&gt;
{{#ifeq:{{{Client}}}|EXL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|DHL|&lt;br /&gt;
    {{#vardefine:CostREQ|525}}&lt;br /&gt;
    {{#vardefine:CostEST|525}}&lt;br /&gt;
    {{#vardefine:CostFS|525}}&lt;br /&gt;
    {{#vardefine:CostTS|525}}&lt;br /&gt;
    {{#vardefine:CostDEV|500}}&lt;br /&gt;
    {{#vardefine:CostST|500}}&lt;br /&gt;
    {{#vardefine:CostIMP|500}}&lt;br /&gt;
    {{#vardefine:CostPM|500}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|CERT|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PACE|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PROD|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;!-- Default charges for 2012 for no client --&amp;gt;&lt;br /&gt;
    {{#vardefine:Message|Unknown costs for client/year ({{{Client|No client}}}/{{{Year|No year}}})}}&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Year}}}|2011|&lt;br /&gt;
{{#ifeq:{{{Client}}}|EXL|&lt;br /&gt;
    {{#vardefine:CostREQ|510}}&lt;br /&gt;
    {{#vardefine:CostEST|510}}&lt;br /&gt;
    {{#vardefine:CostFS|510}}&lt;br /&gt;
    {{#vardefine:CostTS|510}}&lt;br /&gt;
    {{#vardefine:CostDEV|459}}&lt;br /&gt;
    {{#vardefine:CostST|459}}&lt;br /&gt;
    {{#vardefine:CostIMP|459}}&lt;br /&gt;
    {{#vardefine:CostPM|510}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|DHL|&lt;br /&gt;
    {{#vardefine:CostREQ|510}}&lt;br /&gt;
    {{#vardefine:CostEST|510}}&lt;br /&gt;
    {{#vardefine:CostFS|510}}&lt;br /&gt;
    {{#vardefine:CostTS|510}}&lt;br /&gt;
    {{#vardefine:CostDEV|438}}&lt;br /&gt;
    {{#vardefine:CostST|438}}&lt;br /&gt;
    {{#vardefine:CostIMP|438}}&lt;br /&gt;
    {{#vardefine:CostPM|510}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|CERT|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PACE|&lt;br /&gt;
    {{#vardefine:CostREQ|600}}&lt;br /&gt;
    {{#vardefine:CostEST|600}}&lt;br /&gt;
    {{#vardefine:CostFS|600}}&lt;br /&gt;
    {{#vardefine:CostTS|600}}&lt;br /&gt;
    {{#vardefine:CostDEV|600}}&lt;br /&gt;
    {{#vardefine:CostST|600}}&lt;br /&gt;
    {{#vardefine:CostIMP|600}}&lt;br /&gt;
    {{#vardefine:CostPM|600}}&lt;br /&gt;
|&lt;br /&gt;
{{#ifeq:{{{Client}}}|PROD|&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;!-- Default charges for 2011 for no client --&amp;gt;&lt;br /&gt;
    {{#vardefine:Message|Unknown costs for client/year ({{{Client|No client}}}/{{{Year|No year}}})}}&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
|&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
}}{{#ifeq:{{{#var:COSTEST}}}||&lt;br /&gt;
&amp;lt;!-- Default charges for no matching year --&amp;gt;&lt;br /&gt;
    {{#vardefine:Message|Unknown costs for client/year ({{{Client|No client}}}/{{{Year|No year}}})}}&lt;br /&gt;
}}{{#ifeq:{{{FOC|N}}}|Y|&lt;br /&gt;
    {{#vardefine:Message| }}&lt;br /&gt;
    {{#vardefine:CostREQ|0}}&lt;br /&gt;
    {{#vardefine:CostEST|0}}&lt;br /&gt;
    {{#vardefine:CostFS|0}}&lt;br /&gt;
    {{#vardefine:CostTS|0}}&lt;br /&gt;
    {{#vardefine:CostDEV|0}}&lt;br /&gt;
    {{#vardefine:CostST|0}}&lt;br /&gt;
    {{#vardefine:CostIMP|0}}&lt;br /&gt;
    {{#vardefine:CostPM|0}}&lt;br /&gt;
}}{{#if: {{#var:Message}} |{{warning|{{#var:Message}}}} | }}&lt;br /&gt;
&amp;lt;table border=&amp;quot;1px&amp;quot; width=&amp;quot;100%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; colspan={{#ifeq:{{{FSEST}}}|Y|5|4}}&amp;gt;'''Cost Details'''&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''Activity'''&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;'''Estimate&amp;lt;br /&amp;gt;No. of Days'''&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;'''No. of Days'''&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;'''Rate per Day (£)'''&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;'''Cost (£ Exc. VAT)'''&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Requirements&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EREQ|{{{REQ}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{REQ|0}}} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostREQ}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{REQ|0}}}*{{#var:CostREQ}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Change Request Evaluation&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EEST|{{{EST}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EST|0}}} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostEST}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{EST|0}}}*{{#var:CostEST}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Functional Specification&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EFS|{{{FS}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{FS|0}}} |2}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostFS}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{FS|0}}}*{{#var:CostFS}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Technical Specification&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{ETS|{{{TS}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{TS|0}}}|2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostTS}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{TS|0}}}*{{#var:CostTS}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Development&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EDEV|{{{DEV}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{DEV|0}}} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostDEV}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{DEV|0}}}*{{#var:CostDEV}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Testing and Release&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{ESTT|{{{ST}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{ST|0}}} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostST}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{ST|0}}}*{{#var:CostST}} }} |2}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Implementation&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EIMP|{{{IMP}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{IMP|0}}} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostIMP}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{IMP|0}}}*{{#var:CostIMP}} }}|2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
{{#ifeq:{{{PM|X}}}|X||&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;Project Management&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{EPM|{{{PM|0}}}}}} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{{PM|0}}} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#var:CostPM}}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: {{{PM|0}}}*{{#var:CostPM}} }}|2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;}}&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td colspan={{#ifeq:{{{FSEST}}}|Y|5|4}}&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FIXEDCOST|N}}}|N|&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''TOTAL'''&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{#expr: {{{EREQ|{{{REQ}}}}}}+{{{EEST|{{{EST}}}}}}+{{{EFS|{{{FS}}}}}}+{{{ETS|{{{TS}}}}}}+{{{EDEV|{{{DEV}}}}}}+{{{ESTT|{{{ST}}}}}}+{{{EIMP|{{{IMP}}}}}}+{{{EPM|{{#ifeq:{{{PM|X}}}|X|0|{{{PM|0}}}}}}}} }} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{#expr: {{{REQ|0}}}+{{{EST|0}}}+{{{FS|0}}}+{{{TS|0}}}+{{{DEV|0}}}+{{{ST|0}}}+{{{IMP|0}}}+{{#ifeq:{{{PM|X}}}|X|0|{{{PM|0}}}}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format: {{#expr: ({{{REQ|0}}}* {{#var:CostREQ}})+({{{EST|0}}}* {{#var:CostEST}})+({{{FS|0}}}* {{#var:CostFS}})+({{{TS|0}}}* {{#var:CostTS}})+({{{DEV|0}}}* {{#var:CostDEV}})+({{{ST|0}}}* {{#var:CostST}})+({{{IMP|0}}}* {{#var:CostIMP}})+({{#ifeq:{{{PM|X}}}|X|0|{{{PM|0}}}}}* {{#var:CostPM}}) }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;'''TOTAL (FIXED COST)'''&amp;lt;/td&amp;gt;&lt;br /&gt;
{{#ifeq:{{{FSEST}}}|Y|&amp;lt;td bgcolor=&amp;quot;silver&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{#expr: {{{EREQ|{{{REQ}}}}}}+{{{EEST|{{{EST}}}}}}+{{{EFS|{{{FS}}}}}}+{{{ETS|{{{TS}}}}}}+{{{EDEV|{{{DEV}}}}}}+{{{ESTT|{{{ST}}}}}}+{{{EIMP|{{{IMP}}}}}}+{{{EPM|{{#ifeq:{{{PM|X}}}|X|0|{{{PM|0}}}}}}}} }} |2 }}&amp;lt;/td&amp;gt;|}}&lt;br /&gt;
&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;{{#number_format: {{#expr: {{{REQ|0}}}+{{{EST|0}}}+{{{FS|0}}}+{{{TS|0}}}+{{{DEV|0}}}+{{{ST|0}}}+{{{IMP|0}}}+{{#ifeq:{{{PM|X}}}|X|0|{{{PM|0}}}}} }} |2 }}&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;silver&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;£{{#number_format:{{{FIXEDCOST}}} |2}}&amp;lt;/td&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;'''Estimate excludes training, release to live and go live support.'''&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Templates|{{PAGENAME}}]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
	<entry>
		<id>https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_331463_Add_Load_Fields_to_Transport_Report&amp;diff=2650</id>
		<title>EST 331463 Add Load Fields to Transport Report</title>
		<link rel="alternate" type="text/html" href="https://calidusassist.adcservices.apteancloud.com/calidus-assist/OBS/index.php?title=EST_331463_Add_Load_Fields_to_Transport_Report&amp;diff=2650"/>
		<updated>2015-12-02T09:10:28Z</updated>

		<summary type="html">&lt;p&gt;Tippingm: v1.0 - Review and update for issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Estimate&lt;br /&gt;
|Supimix_Client_Code=HEW&lt;br /&gt;
|Supimix_Project_Code=DEV&lt;br /&gt;
|Supimix_Site_Code=BSE&lt;br /&gt;
|Supimix_Client_Reference=N/A&lt;br /&gt;
|Supimix_Number=331463&lt;br /&gt;
|The_version_of_the_document=1.0&lt;br /&gt;
|Your_Name=A N Walker&lt;br /&gt;
|Supimix_PO_Reference=None&lt;br /&gt;
|Supimix_Priority=3&lt;br /&gt;
|Date_(DD/MM/YY)=01/12/15&lt;br /&gt;
|Clients_Customer=N/A&lt;br /&gt;
|System_Version_being_changed=3.X&lt;br /&gt;
|Client_Request=Can we have the ID, the Vehicle Registration and the Trailer ID? Add the columns to the front of the report.&lt;br /&gt;
|OBS_Solution=The transport report requires modification to show:&lt;br /&gt;
*	The Vehicle ID&lt;br /&gt;
*	The Vehicle Registration&lt;br /&gt;
*	The Trailer ID.&lt;br /&gt;
&lt;br /&gt;
All of this information will be sourced from the Load, referencing by the Vehicle information for the registration.&lt;br /&gt;
&lt;br /&gt;
The Load will be obtained from the Delivery job.&lt;br /&gt;
&lt;br /&gt;
The new columns will be added to the start of the report, as follows:&lt;br /&gt;
&lt;br /&gt;
[[File:EST_331463_TransportReport.PNG|border|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|Requirements_Days=0&lt;br /&gt;
|Estimation_Days=0.25&lt;br /&gt;
|Functional_Specification_Days=0.25&lt;br /&gt;
|Technical_Specification_Days=0.25&lt;br /&gt;
|Development_Days=0.75&lt;br /&gt;
|Testing_and_Release_Days=0.25&lt;br /&gt;
|Implementation_Days=0.25&lt;br /&gt;
|Project_Management_Days=0.25&lt;br /&gt;
|Year=2015&lt;br /&gt;
|Free_Of_Charge=N&lt;br /&gt;
|Supimix_Client_Code|TEMPLATE=HEW}}&lt;/div&gt;</summary>
		<author><name>Tippingm</name></author>
	</entry>
</feed>