FS 293863 CDL EPOD Modifications: Difference between revisions

From Calidus HUB
(0.2 - Added more details on CDL POC format and SIC (Cust Ref))
(0.2 - Added more details on CDL POC format)
Line 1,075: Line 1,075:
The fields used on both pages are as follows:
The fields used on both pages are as follows:
*Collection Date: EPL_START_PLANNED_DATE of EPOD_JOB
*Collection Date: EPL_START_PLANNED_DATE of EPOD_JOB
*CDL Representative: EPL_NAME of EPOD_USERS
*CDL Representative: EPL_USER_NAME of EPOD_USER
*Consignment Note Code: CUST_CODE + JOB_ID
*Consignment Note Code: CUSTOMER_CODE + JOB_ID of EPOD_JOB
*Waste Remove From: Customer Address
*Waste Remove From: Address information from EPOD_CUSTOMER
*Premises Code: CUST_CODE
*Premises Code: CUSTOMER_CODE of EPOD_JOB
*Waste Taken To: Site Address
*Waste Taken To: Site Address (taken from the EPOD_CUSTOMER record for the SITE_ID
*CDL Internal Reference: JOB_ID
*CDL Internal Reference: EPL_JOB_ID of EPOD_JOB
*SIC: CUST_REF
*SIC: EPL_CUST_REF of EPOD_JOB
*Qty (Kg): Calculated based on Product Weight * Qty
*Qty (Kg): Calculated based on EPL_PRODUCT_WEIGHT * EPL_PRODUCT_QTY_ACTUAL
*Carrier
*Carrier
**Vehicle Reg: Load Vehicle
**Vehicle Reg: EPL_VEHICLE_REG of EPOD_VEHICLE, from EPL_VEHICLE_ID of EPOD_LOAD
**Signature: DRIVER_SIGNATURE
**Signature: EPL_ENG_SIGNATURE of EPOD_JOB
**Time: ACTUAL_TIME
**Time: EPL_END_ACTUAL_TIME of EPOD_JOB
**Print Name: DRIVER NAME
**Print Name: EPL_USER_NAME of EPOD_USER
**Date: ACTUAL_DATE
**Date: EPL_END_ACTUAL_DATE of EPOD_JOB
*Consignor:
*Consignor:
**Consignor Name: CUST_SIGNATORY
**Consignor Name: CUST_SIGNATORY
**Signature: CUST_SIGNATURE
**Signature: EPL_JOB_SIGNATURE
**Date: ACTUAL_DATE
**Date: EPL_END_ACTUAL_DATE of EPOD_JOB
**Time: ACTUAL_TIME
**Time: EPL_END_ACTUAL_TIME of EPOD_JOB
**Consignor Name: CUSTOMER CONTACT + PHONE
**Consignor Name: EPL_CONTACT + EPL_TELEPHONE of EPOD_CUSTOMER
**Office Instruction: OFFICE_INSTRUCTIONS
**Office Instruction: EPL_OFFICE_INSTRUCTION of EPOD_JOB
**Driver Instruction: INSTRUCTIONS
**Driver Instruction: EPL_INSTRUCTIONS of EPOD_JOB
All other details on the POD will be produced as-is on the pro-forma document.
All other details on the POD will be produced as-is on the pro-forma document.



Revision as of 16:30, 1 December 2011




Aptean Logo.png







Computer Disposals Limited

CDL EPOD Modifications


CALIDUS ePOD

1st December 2011 - 0.2
Reference: FS 293863












































Functional Overview

Client Requirement

Development is required to the CALIDUS ePOD system in order to provide the functionality required by CDL. The requirements have been set out by Matthew Turner from visits to the client as follows:

Computer Disposals collect used computer equipment from companies to recycle at their head office in Warrington.

They are currently implementing a back office solution to handle all job processing. The system will export basic job detail. We need to provide xml/csv schema detail so they can design an import function to pass job detail onto us. They will provide a example of their standard output in November, so we can tell them how to change it.

They have a 2 part delivery note that is largely based on a fixed template created in Word.

Coll Note Part 1 is attached.

Coll Note Part 2 is attached.

I have marked the detail that comes from the CDL back job office import on the 2 part form with a tick. I have marked the detail that the driver needs to complete with an X.

In the current process, the driver does not generally know the exact quantity of goods he is collecting from a site. A general idea of the number of items to be collected is usually entered in the driver instructions part of the collection note. We refer to driver instructions in ePOD as ‘job instructions’.

On Product QTY Count, you will see that the driver does a manual count of equipment collected. He then does an estimation of weight based on multiplication of set weight per item. The result is entered on the QTY KG boxes on both parts on the collection note.

Example: (qty count of product) x ( set weight per product ) = QTY (KG)

On Coll Note Part 1 the following rules apply:

In box CRT Monitor QTY (KG), the KG total number is based on:

(qty count of monitors) x ( set weight per monitor ) = QTY (KG)

In box Flat Screen Displays QTY KG, the KG total number is based on:

(qty count of TFT’s) x ( set weight per TFT) + (qty count of laptops) x ( set weight per laptops) = QTY (KG)

In box Waste Refrigerants QTY KG, the KG total number is based on:

(qty count of waste refrigerants) x ( set weight per waste refrigerants ) = QTY (KG)


On Coll Note Part 2 which is the 2nd part of the collection note, the following rules apply:

In box IT Equipment, the KG total number is based on:

Total QTY KG of all collected products except Monitors, TFT’s, Laptops, Waste Refrigerants

Set Weights Info

  • 1 x Monitor = 12 Kg
  • 1 x TFT = 8 Kg
  • 1 x Base = 8 Kg
  • 1 x General = 2 Kg
  • 1 x Printer = 5 Kg
  • 1 x Server = 12 Kg
  • 1 x Laptop = 8 Kg
  • 1 x Refrigeration Unit = 50 Kg

Anticipated Process On PDA:

  1. Driver opens collection job from manifest
  2. Driver accesses product confirmation
  3. Driver does QTY count of product
  4. Result of calculation for QTY KG does not necessarily have to be shown on PDA just electronic collection note back in system.
  5. Driver signs PDA.
  6. Customer (Consignor) signs PDA

General Info:

Consignor is ‘Customer‘.

Part E (Disposer of Waste) on both parts of the collection note needs to be replicated on the electronic collection note, but is not interacted with in any way by our system. Automatic email POD is required on this contract.

General Questions:

Can date and time be automatically provided by the system on the electronic collection note?

Can driver print name and vehicle registration automatically be provided by the system on the electronic collection note?

CDL will be using HTC Touch 2.

Solution Overview

The functionality required is:

  • Bespoke Job Import function
  • Bespoke Multi-part Proof of Collection
  • Multiple Signatures at Delivery/Collection
  • Ad Hoc Collection process
  • Product Weights
  • Automatic email of POD/POC
  • Office Instructions
  • Modifiable customer contact.

Scope

  • Modifications will be made to version 1.1 of CALIDUS ePOD system.


Set-up

Pre-requisites

  • For emailing POC/POD documents, Email must be configured on the CALIDUS ePOD server.

Menu Structure

None

Data

  • The standard products must be created with standard weights.
  • For emailing POC/POD documents, customers must be configured with email addresses.


Functional Description

Configuration

New Rules are required for the configuration of the system:

Site/Job Group

  • Driver Signature Required Delivery
  • Driver Signature Required Collection
  • Ad Hoc Collection
  • Automatic Email

Site

  • Job Import Format
  • Automatic Email

Database Modifications

The EPOD_JOB table will be modified to include a new EPL_OFFICE_INSTRUCTIONS field. This will be in the same format as the current Instructions field.

The EPOD_JOB table will be modified to include a new EPL_CUST_SIGNATORY field. This will be in the same format as the current EPOD_CUSTOMERS Contact field.

The EPOD_JOB table will be modified to include a new EPL_CUST_REF field. This will be a 30-character field. Note Note: This is also being added under developments for another customer - see the Referenced documents for details.

The EPOD_PRODUCTS table will be modified to include a new Weight field. This will be a floating point field.

The EPOD_SERVICE_PRODUCT_MASTER table will be modified to include a new Weight field. This will be a floating point field.

Office Instructions

A new field of office instruction will be added to the EPOD_JOB table. This field will need to be displayed within the Job Details screen. This will be a free text field, identical to the current instructions field.


Bespoke Job Import Function

The Import shall be performed via a XML file. The file format must conform to the following schema. The upload shall function so that if there is a single issue with the file, no data will be committed, "All or Nothing". The upload works for both adding and updating data. The upload is available via a manual upload or a web request.

XML Schema

A base for the XML import:

<?xml version="1.0" encoding="utf-16"?>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 <xsd:element name="EPOD_IMPORT">
   <xsd:complexType>
     <xsd:sequence>
       <xsd:element name="EPOD_LOADS" maxOccurs="1" nillable="true" minOccurs="0">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="EPOD_LOAD" nillable="true" minOccurs="0">
               <xsd:complexType>
                 <xsd:sequence>
                   <xsd:element name="EPL_SITE_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_LOAD_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="12" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_LOAD_START_PLANNED_DATE" type="xsd:int" nillable="true" minOccurs="0" />
                   <xsd:element name="EPL_LOAD_START_PLANNED_TIME" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_LOAD_END_PLANNED_DATE" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_LOAD_END_PLANNED_TIME" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_LOAD_DISTANCE_PLANNED" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_USER_ID" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPOD_JOBS" nillable="true" minOccurs="0" maxOccurs="1">
                     <xsd:complexType>
                       <xsd:sequence>
                         <xsd:element name="EPOD_JOB" nillable="true" minOccurs="0">
                           <xsd:complexType>
                             <xsd:sequence>
                               <xsd:element name="EPL_SITE_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="10" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_LOAD_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="12" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_JOB_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="10" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_JOB_TYPE" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:enumeration value="D"/>
                                     <xsd:enumeration value="C"/>
                                     <xsd:enumeration value="S"/>
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_JOB_GROUP" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="5" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_JOB_INSTRUCTION" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="255" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_OFFICE_INSTRUCTION" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="255" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_CUSTOMER_CODE" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="20" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_START_PLANNED_DATE" type="xsd:int" nillable="true" minOccurs="0"/>
                               <xsd:element name="EPL_START_PLANNED_TIME" type="xsd:int" nillable="true" minOccurs="0"/>
                               <xsd:element name="EPL_DISTANCE_PLANNED" type="xsd:int" nillable="true" minOccurs="0"/>
                               <xsd:element name="EPL_CUSTOMER_NAME" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="100" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_ADDRESS_1" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_ADDRESS_2" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_ADDRESS_3" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_ADDRESS_4" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_POSTCODE" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:pattern value="^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) {0,1}[0-9][A-Za-z]{2})$" />
                                   </xsd:restriction>
                                 </xsd:simpleType>                               
                               </xsd:element>
                               <xsd:element name="EPL_CONTACT" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_TELEPHONE" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="50" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_EMAIL" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="255" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPOD_CONTAINERS" nillable="true" minOccurs="0" maxOccurs="1">
                                 <xsd:complexType>
                                   <xsd:sequence>
                                     <xsd:element name="EPOD_CONTAINER" nillable="true" minOccurs="0">
                                       <xsd:complexType>
                                         <xsd:sequence>
                                           <xsd:element name="EPL_SITE_ID" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_JOB_ID" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_CONTAINER_ID" type="xsd:int" nillable="false"/>
                                           <xsd:element name="EPL_SEQUENCE" type="xsd:int" nillable="true" minOccurs="0" />
                                           <xsd:element name="EPL_CONTAINER_PACKAGE_CODE" nillable="true" minOccurs="0">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="4" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_CONTAINER_PACKAGE_DESC" nillable="true" minOccurs="0">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="40" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPOD_PRODUCTS" nillable="true" minOccurs="0" maxOccurs="1" >
                                             <xsd:complexType>
                                               <xsd:sequence>
                                                 <xsd:element name="EPOD_PRODUCT" nillable="true" minOccurs="0">
                                                   <xsd:complexType>
                                                     <xsd:sequence>
                                                       <xsd:element name="EPL_SITE_ID" nillable="false">
                                                         <xsd:simpleType>
                                                           <xsd:restriction base="xsd:string">
                                                             <xsd:maxLength value="10" />
                                                           </xsd:restriction>
                                                         </xsd:simpleType>
                                                       </xsd:element>
                                                       <xsd:element name="EPL_JOB_ID" nillable="false">
                                                         <xsd:simpleType>
                                                           <xsd:restriction base="xsd:string">
                                                             <xsd:maxLength value="10" />
                                                           </xsd:restriction>
                                                         </xsd:simpleType>
                                                       </xsd:element>
                                                       <xsd:element name="EPL_CONTAINER_ID" type="xsd:int" nillable="false"/>
                                                       <xsd:element name="EPL_PRODUCT_CODE" nillable="false">
                                                         <xsd:simpleType>
                                                           <xsd:restriction base="xsd:string">
                                                             <xsd:maxLength value="40" />
                                                           </xsd:restriction>
                                                         </xsd:simpleType>
                                                       </xsd:element>
                                                       <xsd:element name="EPL_SEQUENCE" type="xsd:int" nillable="false"/>
                                                       <xsd:element name="EPL_DESCRIPTION" nillable="true" minOccurs="0">
                                                         <xsd:simpleType>
                                                           <xsd:restriction base="xsd:string">
                                                             <xsd:maxLength value="40" />
                                                           </xsd:restriction>
                                                         </xsd:simpleType>
                                                       </xsd:element>
                                                       <xsd:element name="EPL_PRODUCT_QTY_PLANNED" type="xsd:int" nillable="false"/>
                                                     </xsd:sequence>
                                                   </xsd:complexType>
                                                 </xsd:element>
                                               </xsd:sequence>
                                             </xsd:complexType>
                                           </xsd:element>
                                         </xsd:sequence>
                                       </xsd:complexType>
                                     </xsd:element>
                                   </xsd:sequence>
                                 </xsd:complexType>
                               </xsd:element>
                               <xsd:element name="EPOD_PRODUCTS" nillable="true" minOccurs="0" maxOccurs="1">
                                 <xsd:complexType>
                                   <xsd:sequence>
                                     <xsd:element name="EPOD_PRODUCT" nillable="true" minOccurs="0">
                                       <xsd:complexType>
                                         <xsd:sequence>
                                           <xsd:element name="EPL_SITE_ID" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_JOB_ID" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_PRODUCT_CODE" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="40" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_SEQUENCE" type="xsd:int" nillable="false"/>
                                           <xsd:element name="EPL_DESCRIPTION" nillable="true" minOccurs="0">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="40" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_PRODUCT_QTY_PLANNED" type="xsd:int" nillable="false"/>
                                         </xsd:sequence>
                                       </xsd:complexType>
                                     </xsd:element>
                                   </xsd:sequence>
                                 </xsd:complexType>
                               </xsd:element>
                               <xsd:element name="EPOD_SERVICE" nillable="true" minOccurs="0" maxOccurs="1">
                                 <xsd:complexType>
                                   <xsd:sequence>
                                     <xsd:element name="EPL_SITE_ID" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="10" />
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                     <xsd:element name="EPL_JOB_ID" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="10" />
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                     <xsd:element name="EPL_SERVICE_ID" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="20" />
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                     <xsd:element name="EPL_SERVICE_TYPE" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:enumeration value="D"/>
                                           <xsd:enumeration value="I"/>
                                           <xsd:enumeration value="S"/>
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                     <xsd:element name="EPL_REG_NUMBER" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="15" />
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                     <xsd:element name="EPL_VIN_NUMBER" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="50" />
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                     <xsd:element name="EPL_SIM_NUMBER" nillable="false">
                                       <xsd:simpleType>
                                         <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="50" />
                                         </xsd:restriction>
                                       </xsd:simpleType>
                                     </xsd:element>
                                   </xsd:sequence>
                                 </xsd:complexType>
                               </xsd:element>
                             </xsd:sequence>
                           </xsd:complexType>
                         </xsd:element>
                       </xsd:sequence>
                     </xsd:complexType>
                   </xsd:element>
                 </xsd:sequence>
               </xsd:complexType>
             </xsd:element>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
       <xsd:element name="EPOD_JOBS" nillable="true" minOccurs="0" maxOccurs="1">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="EPOD_JOB" nillable="true" minOccurs="0">
               <xsd:complexType>
                 <xsd:sequence>
                   <xsd:element name="EPL_SITE_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_LOAD_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="12" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_JOB_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_JOB_TYPE" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:enumeration value="D"/>
                         <xsd:enumeration value="C"/>
                         <xsd:enumeration value="S"/>
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_JOB_GROUP" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="5" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_JOB_INSTRUCTION" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="255" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_OFFICE_INSTRUCTION" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="255" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_CUSTOMER_CODE" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="20" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_START_PLANNED_DATE" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_START_PLANNED_TIME" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_DISTANCE_PLANNED" type="xsd:int" nillable="true" minOccurs="0"/>
                   <xsd:element name="EPL_CUSTOMER_NAME" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="100" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_1" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_2" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_3" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_4" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_POSTCODE" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:pattern value="^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) {0,1}[0-9][A-Za-z]{2})$" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_CONTACT" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_TELEPHONE" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="50" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_EMAIL" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="255" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPOD_CONTAINERS" nillable="true" minOccurs="0" maxOccurs="1">
                     <xsd:complexType>
                       <xsd:sequence>
                         <xsd:element name="EPOD_CONTAINER" nillable="true" minOccurs="0">
                           <xsd:complexType>
                             <xsd:sequence>
                               <xsd:element name="EPL_SITE_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="10" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_JOB_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="10" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_CONTAINER_ID" type="xsd:int" nillable="false"/>
                               <xsd:element name="EPL_SEQUENCE" type="xsd:int" nillable="true" minOccurs="0"/>
                               <xsd:element name="EPL_CONTAINER_PACKAGE_CODE" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="4" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_CONTAINER_PACKAGE_DESC" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPOD_PRODUCTS" nillable="true" minOccurs="0" maxOccurs="1">
                                 <xsd:complexType>
                                   <xsd:sequence>
                                     <xsd:element name="EPOD_PRODUCT" nillable="true" minOccurs="0">
                                       <xsd:complexType>
                                         <xsd:sequence>
                                           <xsd:element name="EPL_SITE_ID" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_JOB_ID" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="10" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_CONTAINER_ID" type="xsd:int" nillable="false"/>
                                           <xsd:element name="EPL_PRODUCT_CODE" nillable="false">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="40" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_SEQUENCE" type="xsd:int" nillable="false"/>
                                           <xsd:element name="EPL_DESCRIPTION" nillable="true" minOccurs="0">
                                             <xsd:simpleType>
                                               <xsd:restriction base="xsd:string">
                                                 <xsd:maxLength value="40" />
                                               </xsd:restriction>
                                             </xsd:simpleType>
                                           </xsd:element>
                                           <xsd:element name="EPL_PRODUCT_QTY_PLANNED" type="xsd:int" nillable="false"/>
                                         </xsd:sequence>
                                       </xsd:complexType>
                                     </xsd:element>
                                   </xsd:sequence>
                                 </xsd:complexType>
                               </xsd:element>
                             </xsd:sequence>
                           </xsd:complexType>
                         </xsd:element>
                       </xsd:sequence>
                     </xsd:complexType>
                   </xsd:element>
                   <xsd:element name="EPOD_PRODUCTS" nillable="true" minOccurs="0" maxOccurs="1">
                     <xsd:complexType>
                       <xsd:sequence>
                         <xsd:element name="EPOD_PRODUCT" nillable="true" minOccurs="0">
                           <xsd:complexType>
                             <xsd:sequence>
                               <xsd:element name="EPL_SITE_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="10" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_JOB_ID" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="10" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_PRODUCT_CODE" nillable="false">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_SEQUENCE" type="xsd:int" nillable="false"/>
                               <xsd:element name="EPL_DESCRIPTION" nillable="true" minOccurs="0">
                                 <xsd:simpleType>
                                   <xsd:restriction base="xsd:string">
                                     <xsd:maxLength value="40" />
                                   </xsd:restriction>
                                 </xsd:simpleType>
                               </xsd:element>
                               <xsd:element name="EPL_PRODUCT_QTY_PLANNED" type="xsd:int" nillable="false"/>
                             </xsd:sequence>
                           </xsd:complexType>
                         </xsd:element>
                       </xsd:sequence>
                     </xsd:complexType>
                   </xsd:element>
                   <xsd:element name="EPOD_SERVICE" nillable="true" minOccurs="0" maxOccurs="1">
                     <xsd:complexType>
                       <xsd:sequence>
                         <xsd:element name="EPL_SITE_ID" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:maxLength value="10" />
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                         <xsd:element name="EPL_JOB_ID" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:maxLength value="10" />
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                         <xsd:element name="EPL_SERVICE_ID" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:maxLength value="20" />
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                         <xsd:element name="EPL_SERVICE_TYPE" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:enumeration value="D"/>
                               <xsd:enumeration value="I"/>
                               <xsd:enumeration value="S"/>
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                         <xsd:element name="EPL_REG_NUMBER" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:maxLength value="15" />
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                         <xsd:element name="EPL_VIN_NUMBER" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:maxLength value="50" />
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                         <xsd:element name="EPL_SIM_NUMBER" nillable="false">
                           <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                               <xsd:maxLength value="50" />
                             </xsd:restriction>
                           </xsd:simpleType>
                         </xsd:element>
                       </xsd:sequence>
                     </xsd:complexType>
                   </xsd:element>
                 </xsd:sequence>
               </xsd:complexType>
             </xsd:element>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
       <xsd:element name="EPOD_CUSTOMERS" maxOccurs="1" nillable="true" minOccurs="0">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="EPOD_CUSTOMER" nillable="true" minOccurs="0">
               <xsd:complexType>
                 <xsd:sequence>
                   <xsd:element name="EPL_SITE_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_CUSTOMER_CODE" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="20" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_CUSTOMER_NAME" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="100" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_1" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_2" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_3" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_ADDRESS_4" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_POSTCODE" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:pattern value="^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) {0,1}[0-9][A-Za-z]{2})$" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_CONTACT" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_TELEPHONE" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="50" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_EMAIL" nillable="true" minOccurs="0">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="255" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                 </xsd:sequence>
               </xsd:complexType>
             </xsd:element>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
       <xsd:element name="EPOD_SERVICE_PRODUCT_MASTERS" nillable="false" maxOccurs="1" minOccurs="0">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="EPOD_SERVICE_PRODUCT_MASTER" nillable="false" minOccurs="0">
               <xsd:complexType>
                 <xsd:sequence>
                   <xsd:element name="EPL_SITE_ID" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_PRODUCT_CODE" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_PRODUCT_GROUP" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="10" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_DESCRIPTION" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:maxLength value="40" />
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_STATUS" nillable="false">
                     <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                         <xsd:enumeration value="A"/>
                         <xsd:enumeration value="I"/>
                       </xsd:restriction>
                     </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="EPL_QUANTITY" type="xsd:int" />
                   <xsd:element name="EPL_PRODUCT_WEIGHT" type="xsd:decimal" nillable="true" minOccurs="0"/>
                 </xsd:sequence>
               </xsd:complexType>
             </xsd:element>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
     </xsd:sequence>
     <xsd:attribute name="EPL_SITE_ID">
       <xsd:simpleType>
         <xsd:restriction base="xsd:string">
           <xsd:maxLength value="10" />
         </xsd:restriction>
       </xsd:simpleType>
     </xsd:attribute>
     <xsd:attribute name="EPL_USER_ID">
       <xsd:simpleType>
         <xsd:restriction base="xsd:string">
           <xsd:maxLength value="10" />
         </xsd:restriction>
       </xsd:simpleType>
     </xsd:attribute>
     <xsd:attribute name="EPL_USER_PASSWORD">
       <xsd:simpleType>
         <xsd:restriction base="xsd:string">
           <xsd:maxLength value="100" />
         </xsd:restriction>
       </xsd:simpleType>
     </xsd:attribute>
   </xsd:complexType>
 </xsd:element>
</xsd:schema>


Ad Hoc Collection Process

The Ad Hoc collection process will allow users of the PDA to specify items collected, at point of collection. This will appears as a seperate tab on the PDA within the Collections menu. Users will be able to select items that currently exists in the EPOD_SERVICE_PRODUCT_MASTER, from a drop down list and add or remove them from the collection. These products will be added to the Loose Products container 00000000.

Once completed the server will then create this container if it does not exist and products.

This will be configurable against the SITE and the JOB GROUP. If configured as off the Ad Hoc tab within the collecitions menu will be disabled. If this is enabled the tab will be displayed allowing a combination of pre-defined containers and products as well as Ad Hoc additions. The functionality provided by Containers without products means that in the scenario that there are no products/containers pre-defined the Containers and Products tabs will be disabled. If the Loose Product container is pre-defined, the Ad Hoc products will be placed onto this container.

Multiple Signatures at Delivery/Collection

When completing a Delivery/Collection, the flag against site for Driver Signature will be checked. If this option is enabled the user will be asked to sign (Driver) as in the service menu. These details will be stored in the driver signature field within the Job table.

The flag will be configurable against Job Group and Site. As with other configuration, the job group will be checked if no record is present then the site record will be used.

Modifiable Customer Contact

When the PDA requests a customer signature, the Customer Contact Name is defaulted into the text box above the signature. The user is allowed to amend this name, to reflect the customer contact who actually signed for the work.

This customer name must be sent back to the Server.

The Server must save this to the new Job field created for this purpose (CUST_SIGNATORY).

This must be used on the POD/POC/Service reports created instead of the customer name.

Product Weights

Admin

The Service Product Maintenance screen (product_maintanance.aspx) will be modified to add a Weight column to the grid when data is found.

293863-ProdWeight-1.PNG

This will come from the new field on EPOD_SERVICE_PRODUCTS_MASTER.

When adding a new product from this screen (pressing the New button), the screen will prompt for the Weight. This will be positioned under the Product Status field, in line with it.

293863-ProdWeight-2.PNG

Clicking Create will save the new product with the weight. Weight (and quantity) are not required entries. Weight if entered will be validated as a floating point number.

When editing a product on the grid (by clicking Select, the Edit), the screen will allow the user to edit the weight in position here, like the Status and Quantity.

293863-ProdWeight-3.PNG

Clicking Update will save the product with any amendments. Weight (and quantity) are not required entries. Weight if entered will be validated as a floating point number.

Server

When a PDA client confirms a job as complete, the server will update the Job with the new products (see "Ad Hoc Collection Process").

When creating these products, the server will get the Service Product record relating to the product line. If found, and the product has a weight against it, this will be multiplied by the product quantity and saved into the weight field against the Job Products record.

Bespoke Multi-part Proof of Collection Document

A new POC format will be created, labelled as "CDL". This will match as closely as possible the existing documents used by CDL, as can be seen in Appendix A.

The fields used on both pages are as follows:

  • Collection Date: EPL_START_PLANNED_DATE of EPOD_JOB
  • CDL Representative: EPL_USER_NAME of EPOD_USER
  • Consignment Note Code: CUSTOMER_CODE + JOB_ID of EPOD_JOB
  • Waste Remove From: Address information from EPOD_CUSTOMER
  • Premises Code: CUSTOMER_CODE of EPOD_JOB
  • Waste Taken To: Site Address (taken from the EPOD_CUSTOMER record for the SITE_ID
  • CDL Internal Reference: EPL_JOB_ID of EPOD_JOB
  • SIC: EPL_CUST_REF of EPOD_JOB
  • Qty (Kg): Calculated based on EPL_PRODUCT_WEIGHT * EPL_PRODUCT_QTY_ACTUAL
  • Carrier
    • Vehicle Reg: EPL_VEHICLE_REG of EPOD_VEHICLE, from EPL_VEHICLE_ID of EPOD_LOAD
    • Signature: EPL_ENG_SIGNATURE of EPOD_JOB
    • Time: EPL_END_ACTUAL_TIME of EPOD_JOB
    • Print Name: EPL_USER_NAME of EPOD_USER
    • Date: EPL_END_ACTUAL_DATE of EPOD_JOB
  • Consignor:
    • Consignor Name: CUST_SIGNATORY
    • Signature: EPL_JOB_SIGNATURE
    • Date: EPL_END_ACTUAL_DATE of EPOD_JOB
    • Time: EPL_END_ACTUAL_TIME of EPOD_JOB
    • Consignor Name: EPL_CONTACT + EPL_TELEPHONE of EPOD_CUSTOMER
    • Office Instruction: EPL_OFFICE_INSTRUCTION of EPOD_JOB
    • Driver Instruction: EPL_INSTRUCTIONS of EPOD_JOB

All other details on the POD will be produced as-is on the pro-forma document.

All existing POD/POC formats include a section that allows the user to send the document via Email. This section in each existing format will be modified to be surrounded by two identical comments, similar to the below:

<!-- __EMAIL_SECTION__ -->

The Email section will be encased in a Division, specifically identified. CSS will be created to ensure that this section is removed when printing, using a CSS style specific for media printing.

For example:

<style type="text/css" media="screen">
#emailSection {display: block;}
</style>
<style type="text/css" media="print">
#emailSection {display: none;}
</style>
<div id="emailSection">
<!-- __EMAIL_SECTION__ -->
.
.
.
<!-- __EMAIL_SECTION__ -->
</div>


Automatic email of POD/POC

When a PDA client confirms a job as complete, the server will update the Job to Complete status.

When this is complete, the process will check whether the new Configuration rule "Automatic Email" is set up for the Site of the completed job.

If this is enabled, the process will get the Customer record for the Job's Customer.

If the Email address of the Customer is set, the following actions will be taken:

  • The process will render the POD or POC for the Job, in the correct format, according to the Site or Job Group of the completed Job.
  • The process will take the rendered page and remove any code in between the new EMAIL SECTION comment tags
  • This rendered page will then be sent to the customer's email address through the standard email mechanism.


Appendix A: POC Document Formats

293863-POC-1.JPG

293863-POC-2.JPG


Appendix B: Quote & Document References

Warning Warning: Unknown costs for client/year (CDL/2011)
Cost Details
Activity No. of Days Rate per Day (£) Cost (£ Exc. VAT)
Requirements 0.00 0 £0.00
Change Request Evaluation 0.00 0 £0.00
Functional Specification 1.00 0 £0.00
Technical Specification 0.00 0 £0.00
Development 18.00 0 £0.00
Testing and Release 5.00 0 £0.00
Implementation 0.00 0 £0.00
Project Management First argument to "number_format" must be a number. 0 £First argument to "number_format" must be a number.
 
TOTAL First argument to "number_format" must be a number.   £First argument to "number_format" must be a number.
Estimate excludes training, release to live and go live support.

B.1 References

Ref NoDocument Title & IDVersionDate
1FS 294229 Whiteline EPOD Modifications0.123/11/2011


B.2 Glossary

Term Definition
EPOD Electronic Proof of Delivery. The OBS EPOD system is CALIDUS ePOD.
CALIDUS eSERV The OBS mobile system to complete Service functionality in the field. This is part of the CALIDUS ePOD system.
PDA The mobile device on which the C-ePOD system will run in the field. This can be a Phone, EDA or industrial PDA, running Android.
DAL Data Access Layer. A mechanism for accessing data by the system that is removed from the application, allowing for simplified access and providing protection to the data, as only approved DAL methods can be used to modify it.
GPS Global Positioning System. A mechanism of retrieving accurate positioning information in the form of Latitude and Longitude (Lat-Long) co-ordinates from a device.
GPRS, 3G, HSDPA, Data Service All terms referring to mobile device network connectivity, and the speed at which the device connects to the internet.


B.3 Authorised By


Steve McCartney

OBS Representative
_____________________________

Matthew Turner

OBS Representative
_____________________________