FS 340164 PROD-71 Configurable Vehicle Checks Report

From Calidus HUB





Aptean Logo.png







OBS Logistics Ltd

Configurable Vehicle Checks Report


CALIDUS ePOD

4th January 2017 - 0.3
Reference: FS 340164 PROD-71












































Functional Overview

Client Requirement

Allow server-side configuration of the Vehicle Defect check reports, so that basic report formats can be produced and modified without releases of the server and admin in the future.


Solution Overview

Signature Signatory and T&Cs will now be sent back as new top-level tags in the Vehicle Checks message.

The server will store this information in new fields on the database, and will amend the way that the vehicle checks information is stored, so that this information is not stored twice.

A Configurable Vehicle Checks report format will be created in the same way as the Configurable POD report recently created. This will be modified to allow full forms of UDF to be specified and formatted.

Any existing bespoke Vehicle Check reports will be modified to support the new Vehicle Defect Check Data format.

The Admin Vehicle Check Responses screen will be modified to run this new type of configurable report.


Scope

Note Note: This requires an update to the latest beta version of WkHtmlToPDF, in order to support flex layouts.

Note Note: This development is dependent on the development 340070/PROD-68 - Marking Vehicle Checks as Defects. If not yet complete, this should be done in conjunction with that change.


Set-up

Pre-requisites

This requires an update to the latest beta version of WkHtmlToPDF, in order to support flex layouts. This must be included in the build.


Menu Structure

No changes.


Data

Set up data for configurable reports on EPOD_CONFIG_REPORT:

  • ECR_ID - as generated and referenced in EPOD_LIST_ITEMS.
  • ECR_NAME - as required.
  • ECR_CSS - the CSS for the report.
  • ECR_PAGE_HEADER - the page header.
  • ECR_INITIAL_HEADER - the initial header.
  • ECR_CONTENT_TITLE - the content, which can be built from individual items or just [EPOD_VEHICLE_CHECK.EPL_VEHICLE_CHECK_DATA], to be formatted in one block.
  • ECR_CONTENT_ROW/ECR_CONTENT_TOTAL/ECR_CONTENT_EMPTY - N/A
  • ECR_FINAL_FOOTER - the final footer
  • ECR_PAGE_FOOTER - the page footer.
  • ECR_ROWS_FIRST_PAGE/ECR_MAX_ROWS_SINGLE_PAGE/ECR_ROWS_CONTENT_PAGE/ECR_ROWS_LAST_PAGE - 99
  • ECR_ALT_ROWS_IND - N/A
  • ECR_INC_CANCELLED_IND - N/A
  • ECR_INC_IMAGES_IND - Whether photos will be produced on the visible report on a final set of pages.
  • ECR_EMAIL_IMAGES_IND - whether the images (if produced) are emailed/produced in the PDF.
  • ECR_INC_PRODUCTS_IND - N/A
  • ECR_PDF_ORIENT - the orientation of the emailed PDF.
  • ECR_CSS_PRINT - the CSS explicitly for the printed report.


The EPOD_LIST_ITEMS for the EPOD_LISTS ListID "EPL_VEHICLE_CHECKS_FORMAT", referencing the ECR_ID. For example:

  • ListID 24 (the ListID of "EPL_VEHICLE_CHECKS_FORMAT" on EPOD_LISTS)
  • Description - as required
  • Value - ECR_ID of the created configurable Vehicle Checks format in square brackets e.g. "[19]"
  • IsDefault - N/A


Note Note: A simple Vehicle Check report format should be created and implemented as part of this change. One has been created in the development environment which may be used. This must include Signature, Signatory and Terms and Conditions if present.


Functional Description

Database/DAL

Add the following fields to EPOD_VEHICLE_CHECK:

  • EPL_SIGNATURE = nvarchar(max)
  • EPL_SIGNATORY - nvarchar(40)
  • EPL_TNCS - nvarchar(max)

These should be added to all database procedures. None need to be added to the SELECT or SEARCH procedures.


Webservices

Modify saving vehicle checks (in Calidus_ePOD.asmx) so that:

  • the fields above are populated from the saved data.
  • the whole request is not saved into EPL_VEHICLE_CHECK_DATA, just the form.


Admin

The Vehicle Check Results screen (vehicle_check_response.aspx) should be modified to check whether the data in EPL_VEHICLE_CHECK_DATA includes the VEHICLE_CHECK_UPDATE tag. If so, operate as now. If not, expect that the XML includes only the FORM or VEHICLE_CHECK tag.

Furthermore, the screen will be modified to run this new type of configurable report, checking for square brackets in the report type to define that this is a configurable report. This will be done in the same way as this is done in the Jobs screen for the Confifurable POD report.


Any existing bespoke vehicle defect check reports should be modified for the above as well. This is currently:

  • Vehicle_Check_Generic.aspx
  • VC_NHSBT.aspx


Create a configurable vehicle check report (ConfigVC.aspx), based on the Configurable POD report. The following changes will be required:

  • Modify to work with Vehicle Checks instead of a Job, through the parameters and the request data.
  • Modify the DAL objects of the report to use only the following tables:
    • EPOD_VEHICLE_CHECK
    • EPOD_SITE
    • EPOD_USER
    • EPOD_VEHICLE
    • EPOD_SITE_CUSTOMER
  • Modify to add the images from vehicle checks rather than the job.
  • Add a procedure to format an entire UDF block using Flex layout (getUDF).
  • the Signature and TNCs can be extracted from the table, with all currently-supported options. Note that this should require no further changes.
  • Check whether the data in EPL_VEHICLE_CHECK_DATA includes the VEHICLE_CHECK_UPDATE tag. If so, use this tag for the extraction of UDF or UDF Fields. If not, expect that the XML includes only the FORM or VEHICLE_CHECK tag.

Note Note: This requires an update to the latest beta version of WkHtmlToPDF, in order to support flex layouts.

Note Note: The majority of the above ConfigVC report has been prototyped and is available.


Update ConfigPOD.aspx to add in the capability of formatting full UDF forms, as created in the ConfigVC format.


Device

Modify the Vehicle Check Request message format (in WebServices.js) to send back Signature, T&Cs and Signatory in separate fields in update, not in the UDF itself.

Currently, the Signature, T&Cs and Signatory is sent back in a CONFIRM tag within the UDF format.


Modify last vehicle checks to add these fields as separate fields on Vehicle. Store here when completing vehicle checks.


An example of the resulting update is as follows:

<VEHICLE_CHECK_UPDATE ID="1" SITE="MAN_TRSPT" USER="xx" PASSWORD="xx" 
   DEVICE_ID="b17834c3cfe800e0" GPS_STAMP="53.3490522,-2.8521485" 
   DEVICE_OS="android 6.0" DEVICE_TYPE="P9000" TZ="Europe/London">
   <EPL_SITE_ID>MAN_TRSPT</EPL_SITE_ID>
   <EPL_VEHICLE_ID>MF61 OGG</EPL_VEHICLE_ID>
   <EPL_USER_ID>xx</EPL_USER_ID>
   <DATE_TIME>2016-12-13T15:24:21</DATE_TIME>
   <FORM DEFECT="Y">
       <FIELD ID="0001" DEFECT="Y">
           <TEXT>Fuel Tank Level</TEXT>
           <SUBTEXT />
           <GROUP />
           <POST />
           <FORMAT>DDL</FORMAT>
           <REQUIRED>N</REQUIRED>
           <ITEMS>
               <ITEM CODE="">Select a Value</ITEM>
               <ITEM CODE="0" DEFAULT="Y">Empty</ITEM>
               <ITEM CODE="1">1/4</ITEM>
               <ITEM CODE="2">1/2</ITEM>
               <ITEM CODE="3">3/4</ITEM>
               <ITEM CODE="4">Full</ITEM>
           </ITEMS>
           <VALUE>0<VALUE>
       </FIELD>
       <FIELD ID="0002" DEFECT="Y">
           <TEXT>Checks</TEXT>
           <SUBTEXT />
           <GROUP />
           <POST />
           <FORMAT>X2</FORMAT>
           <REQUIRED>N</REQUIRED>
           <ITEMS>
               <ITEM ID="0001" VALUE="false">First Aid Kit</ITEM>
               <ITEM ID="0002" VALUE="false">Tyres</ITEM>
               <ITEM ID="0003" VALUE="false">Lights</ITEM>
               <ITEM ID="0004" VALUE="false">Oil</ITEM>
               <ITEM ID="0005" VALUE="false">Water</ITEM>
               <ITEM ID="0006" VALUE="false">Windows</ITEM>
               <ITEM ID="0007" VALUE="false">Mirrors</ITEM>
               <ITEM ID="0008" VALUE="N" DEFECT="Y">COSHH Manual</ITEM>
           </ITEMS>
       </FIELD>
       <FIELD ID="0003" DEFECT="Y">
           <TEXT>Defects</TEXT>
           <SUBTEXT />
           <GROUP />
           <POST />
           <FORMAT>T</FORMAT>
           <REQUIRED>N</REQUIRED>
           <VALUE>Has Defects</VALUE>
       </FIELD>
   </FORM>
   <EPL_SIGNATURE>...Base64 Image...</EPL_SIGNATURE>
   <EPL_SIGNATORY>tw</EPL_SIGNATORY>
   <EPL_TNCS>...UDF...</EPL_TNCS>
   <REQUEST_TIME_DATE>2016-12-13T15:24:21</REQUEST_TIME_DATE>
</VEHICLE_CHECK_UPDATE>


Appendix A: TEST PLAN

Test Script / Scenario ReferenceConfigurable Vehicle Checks ReportCall Number(s): 340164 PROD-71
Test Script / Scenario DescriptionTesting all old and new Vehicle Check reporting functionality.PASS / ISSUES / FAIL
Menu AccessN/A 
Pre-requisitesNoneTested By:
 
Test ObjectiveTo test that: the old reports, new reports and Admin screen work as expected against all potential formats of Vehicle Check data.Date:
 



Step Action Result Remarks P/F
1 Admin (Results)      
  Ensure that the configured vehicle checks contain a defect field, signature and T&Cs.

Ensure that there are vehicle checks completed in the old format (VEHICLE_CHECK tag) and in the UDF Format (FORM tag), with the full message contained in Vehicle Check Data (i.e. the XML data contains the VEHICLE_CHECK_RESPONSE tag).

Ensure that there is a configurable vehicle check format that contains full UDF form data, formatting for this Flex layout, a header and footer, with signature, signatory and T&Cs configured.
     
1.01 Complete a vehicle check on the device. The vehicle check data is saved without message details. The new fields are populated.    
1.02 Click Select in the Admin Vehicle Check Responses screen against the old VEHICLE_CHECK data. The pop-up details display as expected.    
1.03 Click Select against the new UDF FORM data. The pop-up details display as expected.    
1.04 Click Select against the new format i.e. without the VEHICLE_CHECK_RESPONSE tag. The pop-up details display as expected.    
1.05 Run the old vehicle check reports against the old VEHICLE_CHECK data. The reports work as expected.    
1.06 Run the old vehicle check reports against the new UDF FORM data. The reports work as expected.    
1.07 Run the old vehicle check reports against the new format i.e. without the VEHICLE_CHECK_RESPONSE tag. The reports work as expected.    
1.08 Run the configurable report against the old VEHICLE_CHECK data. The report works as expected, specifically with respect to the signature, signatory and T&Cs.    
1.09 Run the configurable report against the new UDF FORM data. The report works as expected, specifically with respect to the signature, signatory and T&Cs.    
1.10 Run the configurable report against the new format i.e. without the VEHICLE_CHECK_RESPONSE tag. The report works as expected, specifically with respect to the signature, signatory and T&Cs.    



Appendix B: Quote & Document References

Cost Details
Activity Estimate
No. of Days
No. of Days Rate per Day (£) Cost (£ Exc. VAT)
Requirements 0.00 0.00 0 £0.00
Change Request Evaluation 0.00 0.00 0 £0.00
Functional Specification 1.25 1.00 0 £0.00
Technical Specification 0.00 0.00 0 £0.00
Development 4.75 4.75 0 £0.00
Testing and Release 1.00 1.00 0 £0.00
Implementation 0.25 0.25 0 £0.00
Project Management 0.25 0.25 0 £0.00
 
TOTAL 7.50 7.25   £0.00
Estimate excludes training, release to live and go live support.

B.1 References

Ref NoDocument Title & IDVersionDate
1FS 340070 PROD-68 Marking Vehicle Checks as Defects0.114/12/2016


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


Murray Middleton

OBSL Development Manager
_____________________________