FS 308231 Air Link EPOD Development: Difference between revisions
From Calidus HUB
(Added details of all Admin changes required.) |
m (Spellcheck) |
||
(9 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
{{#vardefine:System|''CALIDUS'' eSERV}} | {{#vardefine:System|''CALIDUS'' eSERV}} | ||
{{#vardefine:Doc_Title|Air Link EPOD Development}} | {{#vardefine:Doc_Title|Air Link EPOD Development}} | ||
{{#vardefine:Version|0. | {{#vardefine:Version|0.3}} | ||
{{#vardefine:Date| | {{#vardefine:Date|25th April 2013}} | ||
{{#vardefine:Reference|308231}} | {{#vardefine:Reference|308231}} | ||
{{#vardefine:Year|2013}} | {{#vardefine:Year|2013}} | ||
Line 24: | Line 24: | ||
== Client Requirement == | == Client Requirement == | ||
As described in the Requirements document, referenced | As described in the Requirements document, referenced in the Appendices. | ||
== Solution Overview == | == Solution Overview == | ||
Line 130: | Line 130: | ||
The system will be configured as follows: | The system will be configured as follows: | ||
'''EPOD_SITE of ALS:''' | '''EPOD_SITE of "ALS":''' | ||
* Service format: ALS. | * Service format: ALS. | ||
* Logo: with the ALS logo. | * Logo: with the ALS logo. | ||
* Arrival Times | * Arrival Times - Enabled | ||
* Display Job Code on PDA | * Display Job Code on PDA - Enabled | ||
* Document Photo - Optional | * Document Photo - Optional | ||
* Resequencing Options ("Y" - Free to Resequence) | * Resequencing Options ("Y" - Free to Resequence) | ||
* Scan Errors Intrusive | * Scan Errors Intrusive - Enabled | ||
* PODs PDF | * PODs PDF - Enabled | ||
* Service | * Service will be configured as follows: | ||
** ''Info'' - Enabled | ** ''Info'' - Enabled (ALS) | ||
** ''Diagnosis'' - Enabled (ALS) | |||
** ''Products'' - Enabled | ** ''Products'' - Enabled | ||
** Job | ** Job Status - Enabled | ||
'''EPOD_JOB_GROUP of ALS:''' | '''EPOD_JOB_GROUP of "ALS":''' | ||
* Service format: ALS. | * Service format: ALS. | ||
* Document Photo - Optional | * Document Photo - Optional | ||
* Service | * Service will be configured as follows: | ||
** ''Info'' - Enabled | ** ''Info'' - Enabled (ALS) | ||
** ''Diagnosis'' - Enabled (ALS) | |||
** ''Products'' - Enabled | ** ''Products'' - Enabled | ||
** Job | ** Job Status - Enabled | ||
''' | |||
EPOD_CUSTOMER of ALS:''' | '''EPOD_CUSTOMER of "ALS":''' | ||
* Set up the customer with this name, with the ALS address and contact information entered against it. | * Set up the customer with this name, with the ALS address and contact information entered against it. | ||
<!-- NEW PAGE --> | <!-- NEW PAGE --> | ||
= Functional Description = | = Functional Description = | ||
== Database and DAL Changes == | == Database and DAL Changes == | ||
'''Table EPOD_SITE''' | |||
* EPL_JOB_STATUS - a flag to control whether EPL_JOB_STATUS will be prompted (initially for Services only). nvarchar(1), NOT NULL DEFAULT 'N', values 'Y' or 'N'. | * EPL_JOB_STATUS - a flag to control whether EPL_JOB_STATUS will be prompted (initially for Services only). nvarchar(1), NOT NULL DEFAULT 'N', values 'Y' or 'N'. | ||
Existing packages will be modified to allow the creating, editing and selecting of the new flag, including but not limited to: | Existing packages will be modified to allow the creating, editing and selecting of the new flag, including but not limited to: | ||
Line 173: | Line 173: | ||
{{Note}} It is not necessary to add this flag as a searchable item. However, if allowing this keeps the packages and DAL objects standard in design, then this can also be done, within the DAL and the packages. | {{Note}} It is not necessary to add this flag as a searchable item. However, if allowing this keeps the packages and DAL objects standard in design, then this can also be done, within the DAL and the packages. | ||
'''Table EPOD_JOB_GROUP''' | |||
* EPL_JOB_STATUS - a flag to control whether EPL_JOB_STATUS will be prompted (initially for Services only). nvarchar(1), NOT NULL DEFAULT 'N', values 'Y' or 'N'. | * EPL_JOB_STATUS - a flag to control whether EPL_JOB_STATUS will be prompted (initially for Services only). nvarchar(1), NOT NULL DEFAULT 'N', values 'Y' or 'N'. | ||
Existing packages will be modified to allow the creating, editing and selecting of the new flag, including but not limited to: | Existing packages will be modified to allow the creating, editing and selecting of the new flag, including but not limited to: | ||
Line 188: | Line 189: | ||
Existing package EPOD_SETUP will be modified to ensure that the new flags are defaulted appropriately. | Existing package EPOD_SETUP will be modified to ensure that the new flags are defaulted appropriately. | ||
'''Table EPOD_JOB''' | |||
* EPL_JOB_STATUS - Suspended or Complete (initially for Services only). nvarchar(2), NOT NULL DEFAULT ' ', values 'C' or 'S'. | * EPL_JOB_STATUS - Suspended or Complete (initially for Services only). nvarchar(2), NOT NULL DEFAULT ' ', values 'C' or 'S'. | ||
Existing packages will be modified to allow the creating, editing and selecting of the new field, including but not limited to: | Existing packages will be modified to allow the creating, editing and selecting of the new field, including but not limited to: | ||
Line 201: | Line 203: | ||
* Add as a parameter and searchable item | * Add as a parameter and searchable item | ||
'''Table EPOD_SERVICE_PRODUCT_MASTER''' | |||
* EPL_MODEL - The model of the system the product (part) is for. nvarchar(30). | * EPL_MODEL - The model of the system the product (part) is for. nvarchar(30). | ||
Existing packages will be modified to allow the creating, editing and selecting of the new field, including but not limited to: | Existing packages will be modified to allow the creating, editing and selecting of the new field, including but not limited to: | ||
Line 210: | Line 213: | ||
*EPOD_SERVICE_PRODUCT_M_UPDATE | *EPOD_SERVICE_PRODUCT_M_UPDATE | ||
The existing EPOD_SERVICE_PRODUCT_MASTER DAL object will be changed to: | The existing EPOD_SERVICE_PRODUCT_MASTER DAL object will be changed to: | ||
* Export the new | * Export the new field in XML requests | ||
* Read the new | * Read the new field | ||
* Add as a parameter and searchable item | * Add as a parameter and searchable item | ||
{{Note}} A new package and DAL method will be created to allow the retrieval of DISTINCT EPL_PRODUCT_GROUP of EPOD_SERVICE_PRODUCT_MASTER, for | {{Note}} A new package and DAL method will be created to allow the retrieval of DISTINCT EPL_PRODUCT_GROUP of EPOD_SERVICE_PRODUCT_MASTER, for EPL_SERVICE_GROUP DDL values. This will accept parameters of EPL_SITE_ID only. Exclude Blank values of EPL_PRODUCT_GROUP. | ||
'''Table EPOD_SERVICE''' | |||
* EPL_SERVICE_GROUP - The system type (e.g. Checkout, Cashtube, etc). nvarchar(10). | * EPL_SERVICE_GROUP - The system type (e.g. Checkout, Cashtube, etc). nvarchar(10). | ||
* EPL_SYSTEM_TYPE - The model of the system the product (part) is for. nvarchar(30). | * EPL_SYSTEM_TYPE - The model of the system the product (part) is for. nvarchar(30). | ||
Line 225: | Line 228: | ||
*EPOD_SERVICE_UPDATE | *EPOD_SERVICE_UPDATE | ||
The existing EPOD_SERVICE/SERVICE_JOB DAL object will be changed to: | The existing EPOD_SERVICE/SERVICE_JOB DAL object will be changed to: | ||
* Export the new | * Export the new fields in XML requests | ||
* Read the new | * Read the new fields | ||
* Add as a | * Add as parameters and searchable items | ||
{{Note}} A new package and DAL method will be created to iterate a value of EPL_SERVICE_ID to a new version. this procedure will: | |||
* Retrieve all EPL_SERVICE_ID values matching the start of the text value within the first and last underscores (_) of the field, if found, or all of the field. | |||
* If one found, trim, encapsulate in underscores and add an "A" to the end of the string. | |||
* If more than one found: | |||
** Extract the highest string value after the final underscore for records where the ID starts with an underscore, contains two underscores and has trailing characters (the iteration string). | |||
** Add 1 to the iteration string (i.e. A becomes B, X becomes Y, Z becomes AA, etc) and replace at the end of the string. | |||
'''Examples:''' | |||
* EPL_SERVICE_ID = "1223" and is postponed. EPL_SERVICE_ID will become "_1223_A". | |||
* EPL_SERVICE_ID = "_1223_A" and is postponed again. EPL_SERVICE_ID will become "_1223_B". | |||
* EPL_SERVICE_ID = "1223_A" and is postponed. EPL_SERVICE_ID will become "_1223_A_A". | |||
* EPL_SERVICE_ID = "_1223_A_A" and is postponed again. EPL_SERVICE_ID will become "_1223_A_B". | |||
* EPL_SERVICE_ID = "_1223" and is postponed. EPL_SERVICE_ID will become "__1223_A". | |||
* EPL_SERVICE_ID = "__1223_A" and is postponed. EPL_SERVICE_ID will become "__1223_B". | |||
== Import/Export Changes == | == Import/Export Changes == | ||
Line 236: | Line 251: | ||
== Admin Changes == | == Admin Changes == | ||
The {{#var:System}} system is configured and administered through a web Admin system. This is fully documented elsewhere and referenced in this document appendices. Certain elements will be modified as part of these changes to ensure that the system can be configured correctly for the customer's use. | The {{#var:System}} system is configured and administered through a web Admin system. This is fully documented elsewhere and referenced in this document appendices. Certain elements will be modified as part of these changes to ensure that the system can be configured correctly for the customer's use. | ||
The Job Group and Site screens (job_group.aspx and site_header.aspx respectively) will be modified to allow the system to be configured for: | The Job Group and Site screens (job_group.aspx and site_header.aspx respectively) will be modified to allow the system to be configured for: | ||
Line 254: | Line 270: | ||
{{Note}} The existing 'Resequencing Options' DDL shall be extended over the pan of two columns in this screen, rather than the one it currently takes, to allow for the greater width. If this requires restructuring the table in which these flags are displayed, then ensure this is completed - the layout will be cleaned up as part of this change. | {{Note}} The existing 'Resequencing Options' DDL shall be extended over the pan of two columns in this screen, rather than the one it currently takes, to allow for the greater width. If this requires restructuring the table in which these flags are displayed, then ensure this is completed - the layout will be cleaned up as part of this change. | ||
The Job Details screen (job_details.aspx) will be modified to allow the user to: | The Job Details screen (job_details.aspx) will be modified to allow the user to: | ||
Line 261: | Line 278: | ||
*** Service ID (unique entry required, default to EPL_JOB_CODE if entered or EPL_JOB_ID. | *** Service ID (unique entry required, default to EPL_JOB_CODE if entered or EPL_JOB_ID. | ||
*** Service Type (values IS - Installation, S - Service, DS - Deinstallation). Default to "Service". | *** Service Type (values IS - Installation, S - Service, DS - Deinstallation). Default to "Service". | ||
*** Service Group (e.g. Checkout, Cash Tube, | *** Service Group (e.g. Checkout, Cash Tube, Stamp M/C). The values in this field should be all results from DISTINCT EPL_PRODUCT_GROUP of EPOD_SERVICE_PRODUCT_MASTER, using the new DDL method created for the purpose. A default value ("Enter a Group") should be displayed if one has not been chosen. | ||
** Validate when saving that the Service ID is unique. | ** Validate when saving that the Service ID is unique. | ||
{{Note}} In the event of choosing to create a Service type job, the screen will need to create both a Job and Service record. There is a Job Service DAL object that may be helpful here, although using a separate Service DAL object may be better, given the way the screen currently works. | |||
The Service Details screen (service_detail.aspx) will be modified to: | The Service Details screen (service_detail.aspx) will be modified to: | ||
Line 275: | Line 294: | ||
* Change the title to 'Service Details' in the header and the title of the browser as is standard in the rest of the system. | * Change the title to 'Service Details' in the header and the title of the browser as is standard in the rest of the system. | ||
The Service Product Master screen will be modified to: | |||
The Service Product Master screen (product_maintanance.aspx) will be modified to: | |||
* Add the new Model field (EPL_MODEL) when adding new service products (optional entry). | * Add the new Model field (EPL_MODEL) when adding new service products (optional entry). | ||
* Add/change the new Model field when editing existing products (optional). | * Add/change the new Model field when editing existing products (optional). | ||
* Add the new Model field to the grid. | * Add the new Model field to the grid. | ||
A new Service Report format will be written for the operation, based on the existing Breakdown Report. The format has been prototyped and available in ''P:\EPOD\Correspondence\Air Link\AirLinkReport.html'' and is shown below: | A new Service Report format will be written for the operation, based on the existing Breakdown Report. The format has been prototyped and available in ''P:\EPOD\Correspondence\Air Link\AirLinkReport.html'' and is shown below: | ||
Line 295: | Line 316: | ||
* '''System Fault''' - EPL_JOB_INSTRUCTION of EPOD_JOB | * '''System Fault''' - EPL_JOB_INSTRUCTION of EPOD_JOB | ||
* '''Rectification Required''' - EPL_DIAGNOSIS_NARRATIVE of EPOD_SERVICE | * '''Rectification Required''' - EPL_DIAGNOSIS_NARRATIVE of EPOD_SERVICE | ||
* Job Suspended/Job Complete | * Job Suspended/Job Complete check-boxes - Set based on value of new field EPL_JOB_STATUS of EPOD_JOB. | ||
* Job Chargeable | * Job Chargeable check-box - set based on whether the existing field EPL_CUSTOMER_DAMAGE = "Y" | ||
* Misuse | * Misuse check-box - set based on whether the existing field EPL_CUSTOMER_DAMAGE = "Y" | ||
* '''Materials Used''' section: | * '''Materials Used''' section: | ||
** {{Note}} The customer agreed that the "NO" label (if no products were used) can be omitted from the design. | ** {{Note}} The customer agreed that the "NO" label (if no products were used) can be omitted from the design. | ||
Line 311: | Line 332: | ||
* Engineer Signature - EPL_ENG_SIGNATURE of EPOD_JOB (Base64-decoded image) | * Engineer Signature - EPL_ENG_SIGNATURE of EPOD_JOB (Base64-decoded image) | ||
* '''Date:''' - EPL_END_ACTUAL_DATE of EPOD_JOB | * '''Date:''' - EPL_END_ACTUAL_DATE of EPOD_JOB | ||
The report will be called 'Reports\ALS.aspx'. The code will be structured similarly to the existing report 'GenContnr.aspx'. | |||
== Android PDA Changes == | == Android PDA Changes == | ||
===Database and DAL Changes=== | ===Database and DAL Changes=== | ||
'''Table EPOD_SITE''' | |||
* EPL_JOB_STATUS - a flag to control whether EPL_JOB_STATUS will be prompted (initially for Services only). text, NOT NULL DEFAULT 'N', values 'Y' or 'N'. | |||
The existing PDA_SITE DAL object will be changed to: | |||
* Read the new flag | |||
* Import the flag from XML requests | |||
'''Table EPOD_JOB_GROUP''' | |||
* EPL_JOB_STATUS - a flag to control whether EPL_JOB_STATUS will be prompted (initially for Services only). text, NOT NULL DEFAULT 'N', values 'Y' or 'N'. | |||
The existing PDA_JOB_GROUP DAL object will be changed to: | |||
* Read the new flag | |||
* Import the flag from XML requests | |||
'''Table EPOD_JOB''' | |||
* EPL_JOB_STATUS - Suspended or Complete (initially for Services only). text(2), NOT NULL DEFAULT ' ', values 'C' or 'S'. | |||
The existing PDA_JOB DAL object will be changed to: | |||
* | * Export the new field in XML responses (after EPL_AMENDED_FLAG) | ||
* Read the new field | |||
* Update the new field | |||
{{Note}} The | |||
{{ | '''Table EPOD_SERVICE_PRODUCT_MASTER''' | ||
* EPL_MODEL - The model of the system the product (part) is for. text(30). | |||
The existing PDA_SERVICE_PRODUCT_MASTER DAL object will be changed to: | |||
* Read the new field | |||
{{Note}} A new DAL method "SelectAllSystemTypes" will be created to allow the retrieval of DISTINCT EPL_MODEL of EPOD_SERVICE_PRODUCT_MASTER, for EPL_SYSTEM_TYPE DDL values. This will accept parameters of EPL_SITE_ID and EPL_SERVICE_GROUP only. If EPL_PRODUCT_GROUP is blank, all values of EPL_MODEL will be selected. Exclude Blank values of EPL_MODEL. | |||
'''Table EPOD_SERVICE''' | |||
* EPL_SERVICE_GROUP - The system type (e.g. Checkout, Cashtube, etc). text(10). | |||
* EPL_SYSTEM_TYPE - The model of the system the product (part) is for. text(30). | |||
The existing PDA_SERVICE DAL object will be changed to: | |||
* Export the new fields in XML requests (after EPL_SPEC_REQUIRED in the INFO section) | |||
* Read the new fields | |||
{{Note}} As the database structure is changing with this version, the default values must be carefully set and the database creation script modified to ensure that the standing data is re-downloaded from the server after the changes have been made. This is achieved by setting the "last version changed" variable (lngLastVersionDB) in DBConnection to the latest version number. | |||
===Services Info Tab=== | ===Services Info Tab=== | ||
Line 329: | Line 380: | ||
[[File:AIRLINK-308231-07.PNG|250px|border]] | [[File:AIRLINK-308231-07.PNG|250px|border]] | ||
This screen will be modified to | This screen will be modified as follows: | ||
* The form will be changed into a scrolling vertical layout view, similar to the Diagnosis tab. | |||
* The module will ensure that this tab is displayed if the flag EPL_SERVICE_INFO is not "N" | |||
* If the flag EPL_SERVICE_INFO = "Y", the existing 4 fields will be displayed. | |||
* If the flag EPL_SERVICE_INFO = "A", a picker will be added for the new field EPL_SYSTEM_TYPE. This will be pre-populated with the values from the new PDA_SERVICE_PRODUCT_MASTER DAL method "SelectAllSystemTypes" described above, along with a default value ("Select a System Type"). | |||
* Validation for completion will be changed to ensure that this field has had a value chosen, if configured this way. | |||
* Saving values will be changed to ensure that the configured fields are saved correctly. | |||
===Services Diagnosis Tab=== | ===Services Diagnosis Tab=== | ||
Line 339: | Line 393: | ||
[[File:AIRLINK-308231-09.PNG|250px|border]] | [[File:AIRLINK-308231-09.PNG|250px|border]] | ||
This screen will be modified | This screen will be modified as follows: | ||
* | * The module will ensure that this tab is displayed if the flag EPL_SERVICE_DIAGNOSIS is not "N" | ||
* | * If the flag EPL_SERVICE_DIAGNOSIS is not "N", the Diagnosis field will always be present (EPL_DIAGNOSIS_NARRATIVE). | ||
* | * If the flag EPL_SERVICE_DIAGNOSIS = "Y", the VNOS and Customer Damage flags will be displayed as now. | ||
* If the flag EPL_SERVICE_DIAGNOSIS = "A": | |||
** VNOS will be removed. | |||
** 'Customer Damage' will be relabelled 'Misuse'. | |||
* If the new flag EPL_JOB_STATUS = "Y", a picker will be added with the following values: | |||
** ' ' - 'Select the Job Status' (Default Value) | |||
** 'C' - 'Complete' | |||
** 'S' - 'Suspended'. | |||
** Validation for completion will be changed to ensure that this field has had a value chosen, if configured this way. | |||
==Service Call Confirmation== | ==Service Call Confirmation== | ||
Line 352: | Line 411: | ||
[[File:AIRLINK-308231-10.PNG|250px|border]] | [[File:AIRLINK-308231-10.PNG|250px|border]] | ||
This Signature screen will be modified so that the user can back out to the Services screen if: | |||
* The Job type is Service ONLY and; | |||
* The Signature Type is Customer ONLY. | |||
Once entered, the PDA will require the entry of Engineer signature. The user will not be able to back out of this signature. | {{Note}} Once entered, the PDA will require the entry of Engineer signature. The user will not be able to back out of this signature. | ||
{{ | The Document Photo process will be changed as follows: | ||
* The label and all references to the process will be re-labelled as 'Job Photo' - this will not be a customer style option, but a generic change. | |||
* The process will be called if the flag EPL_DOCUMENT_PHOTO is not "N". {{Note}} This affects Collection, Delivery and Service processing. | |||
* If the value of the flag is "Y", the process will start immediately and will operate as now, in that back-out will not be allowed. | |||
* If the value of the flag is "O", the process will request the user whether they want to take a photo through a pop-up dialogue. | |||
** If 'No' is selected, the process will return to job completion, where the job will be completed as normal and the user returned to the Job List to complete another call. | |||
** If 'Yes' is selected, the process will start as now, allowing the user to take an image and enter a comment before confirming. In this case, however, back-out (through the Android '''Back''' button) will be allowed, discarding any image taken or comment entered, and completing the job as if no photo was requested. | |||
==Server PDA Message Processing== | ==Server PDA Message Processing== | ||
A service job will now be returned with details of Job Status, System Type and Service Group on it. These will be included in the SERVICE section of the JOB_UPDATE message, which will be in the following format: | |||
<EPL_SITE_ID></EPL_SITE_ID> | |||
<EPL_LOAD_ID></EPL_LOAD_ID> | |||
<EPL_JOB_ID></EPL_JOB_ID> | |||
<EPL_USER_ID></EPL_USER_ID> | |||
<EPL_VEHICLE_ID></EPL_VEHICLE_ID> | |||
<EPL_START_DATE_TIME></EPL_START_DATE_TIME> | |||
<EPL_ARRIVAL_DATE_TIME></EPL_ARRIVAL_DATE_TIME> | |||
<EPL_END_DATE_TIME></EPL_END_DATE_TIME> | |||
<EPL_STATUS></EPL_STATUS> | |||
<EPL_CONTACT></EPL_CONTACT> | |||
<EPL_INVOICED></EPL_INVOICED> | |||
<EPL_SIGNED_UNCHECKED></EPL_SIGNED_UNCHECKED> | |||
<EPL_USER_NOTES></EPL_USER_NOTES> | |||
<EPL_TNCS></EPL_TNCS> | |||
<EPL_AMENDED_FLAG></EPL_AMENDED_FLAG> | |||
<EPL_JOB_STATUS></EPL_JOB_STATUS> | |||
<CONFIRMATION> | |||
<EPL_ENG_SIGNATURE></EPL_ENG_SIGNATURE> | |||
<EPL_JOB_SIGNATURE></EPL_JOB_SIGNATURE> | |||
</CONFIRMATION> | |||
<EXCEPTION type="job"> | |||
<EPL_REASON_CODE></EPL_REASON_CODE> | |||
</EXCEPTION> | |||
<SERVICE> | |||
<PREWORK> | |||
<EPL_PREWORK_INTERIOR>OK</EPL_PREWORK_INTERIOR> | |||
<EPL_PREWORK_EXTERIOR>OK</EPL_PREWORK_EXTERIOR> | |||
<EPL_PREWORK_ELECTRIC>OK</EPL_PREWORK_ELECTRIC> | |||
</PREWORK> | |||
<POSTWORK> | |||
<EPL_POSTWORK_INTERIOR>OK</EPL_POSTWORK_INTERIOR> | |||
<EPL_POSTWORK_EXTERIOR>OK</EPL_POSTWORK_EXTERIOR> | |||
<EPL_POSTWORK_ELECTRIC>OK</EPL_POSTWORK_ELECTRIC> | |||
</POSTWORK> | |||
<INFO> | |||
<EPL_UNIT_TYPE>TR</EPL_UNIT_TYPE> | |||
<EPL_REG_NUMBER>REG ID</EPL_REG_NUMBER> | |||
<EPL_VIN_NUMBER>VIN NO</EPL_VIN_NUMBER> | |||
<EPL_MILEAGE>777</EPL_MILEAGE> | |||
<EPL_SIM_NUMBER></EPL_SIM_NUMBER> | |||
<EPL_SPEC_REQUIRED></EPL_SPEC_REQUIRED> | |||
<EPL_SERVICE_GROUP></EPL_SERVICE_GROUP> | |||
<EPL_SYSTEM_TYPE></EPL_SYSTEM_TYPE> | |||
</INFO> | |||
<MC_REF> | |||
<EPL_MC_REF_1>ref1</EPL_MC_REF_1> | |||
<EPL_MC_REF_2>ref2</EPL_MC_REF_2> | |||
<EPL_MC_REF_3>ref3</EPL_MC_REF_3> | |||
<EPL_MC_REF_4>ref4</EPL_MC_REF_4> | |||
<EPL_MC_REF_NARRATIVE>ref narrative</EPL_MC_REF_NARRATIVE> | |||
</MC_REF> | |||
<DIAGNOSIS> | |||
<EPL_DIAGNOSIS_NARRATIVE>diagnosis</EPL_DIAGNOSIS_NARRATIVE> | |||
<EPL_CUSTOMER_DAMAGE>Y</EPL_CUSTOMER_DAMAGE> | |||
<EPL_VNOS>Y</EPL_VNOS> | |||
</DIAGNOSIS> | |||
<PRODUCT> | |||
<EPL_PRODUCT_ID>MGF019</EPL_PRODUCT_ID> | |||
<EPL_QUANTITY>3</EPL_QUANTITY> | |||
<EPL_DIRECTION>U</EPL_DIRECTION> | |||
<EPL_RETURN></EPL_RETURN> | |||
</PRODUCT> | |||
</SERVICE> | |||
In the event that a job has been postponed, the system will be modified to create a new copy of the job, with a new ID. | In the event that a job has been completed with a status of postponed (EPL_JOB_STATUS of EPOD_JOB = "P" on the inbound JOB_UPDATE message from a PDA into web service 'Calidus_epod.asmx'), the system will be modified to create a new copy of the job, with a new ID. The following lists show the tables that need to be copied and the fields to copy or of which to set the value. | ||
'''EPOD_JOB''' | |||
* EPL_SITE_ID - Copy | |||
* EPL_JOB_ID - Generate a new ID | |||
* EPL_LOAD_ID - Blank | |||
* EPL_JOB_TYPE - Copy | |||
* EPL_JOB_GROUP - Copy | |||
* EPL_JOB_INSTRUCTION - Copy | |||
* EPL_JOB_SIGNATURE - Blank | |||
* EPL_REASON_CODE - Blank | |||
* EPL_STATUS - "P" | |||
* EPL_CUSTOMER_CODE - Copy | |||
* EPL_PHOTO_ID - Blank | |||
* EPL_ENG_SIGNATURE - Blank | |||
* EPL_SEQUENCE - Blank | |||
* EPL_START_PLANNED_DATE - Today | |||
* EPL_START_PLANNED_TIME - Now | |||
* EPL_END_PLANNED_DATE - Blank | |||
* EPL_END_PLANNED_TIME - Blank | |||
* EPL_START_ACTUAL_DATE - Blank | |||
* EPL_START_ACTUAL_TIME - Blank | |||
* EPL_END_ACTUAL_DATE - Blank | |||
* EPL_END_ACTUAL_TIME - Blank | |||
* EPL_DISTANCE_PLANNED - Copy | |||
* EPL_DISTANCE_ACTUAL - Blank | |||
* EPL_DRIVING_TIME - Blank | |||
* EPL_INVOICED - Blank | |||
* EPL_LAST_CHANGED_DATE - Today | |||
* EPL_LAST_CHANGED_TIME - Now | |||
* EPL_JOB_CODE - Copy | |||
* EPL_CUST_SIGNATORY - Blank | |||
* EPL_CUST_REF - Copy | |||
* EPL_OFFICE_INSTRUCTION - Copy | |||
* EPL_XFER_FLAG - Blank | |||
* EPL_EMAIL_FLAG - Blank | |||
* EPL_SIGNED_UNCHECKED - Blank | |||
* EPL_SO_NUMBER - Copy | |||
* EPL_ORDER_DATE - Copy | |||
* EPL_SALES_CONTACT - Copy | |||
* EPL_USER_NOTES - Blank | |||
* EPL_OWNER_NAME - Copy | |||
* EPL_TNCS - Blank | |||
* EPL_LINKED_REASON - Blank | |||
* EPL_SERVICE_LEVEL - Copy | |||
* EPL_XFER_TTM_FLAG - Blank | |||
* EPL_AMENDED_FLAG - "N" | |||
* EPL_ARRIVAL_DATE - Blank | |||
* EPL_ARRIVAL_TIME - Blank | |||
* EPL_XF_VALUES - Blank | |||
* EPL_EXT_REF - Copy | |||
* EPL_TRAILER_ID - Blank | |||
* EPL_PF_DEPOT - Blank | |||
* EPL_PF_TRACKING_NO - Copy | |||
* ''EPL_JOB_STATUS'' - Blank | |||
'''EPOD_JOB_ADDRESS''' | |||
* Copy the whole record to the new EPL_JOB_ID if present. | |||
'''EPOD_SERVICE''' | |||
* EPL_SITE_ID - Copy | |||
* EPL_JOB_ID - Copy from EPOD_JOB record created | |||
* EPL_SERVICE_ID - Iterate to a new version using the new DAL procedure for this purpose. | |||
* EPL_SERVICE_TYPE - Copy | |||
* EPL_PREWORK_INTERIOR - Blank | |||
* EPL_PREWORK_EXTERIOR - Blank | |||
* EPL_PREWORK_ELECTRIC - Blank | |||
* EPL_POSTWORK_INTERIOR - Blank | |||
* EPL_POSTWORK_EXTERIOR - Blank | |||
* EPL_POSTWORK_ELECTRIC - Blank | |||
* EPL_UNIT_TYPE - Copy | |||
* EPL_REG_NUMBER - Copy | |||
* EPL_VIN_NUMBER - Copy | |||
* EPL_MILEAGE - Copy | |||
* EPL_SIM_NUMBER - Copy | |||
* EPL_MC_REF_1 - Blank | |||
* EPL_MC_REF_2 - Blank | |||
* EPL_MC_REF_3 - Blank | |||
* EPL_MC_REF_4 - Blank | |||
* EPL_MC_REF_NARRATIVE - Blank | |||
* EPL_DIAGNOSIS_NARRATIVE - Blank | |||
* EPL_SPEC_REQUIRED - Blank | |||
* EPL_FAULT - Blank | |||
* EPL_CUSTOMER_DAMAGE - Copy | |||
* EPL_VNOS - Blank | |||
* EPL_LAST_CHANGED_DATE - Today | |||
* EPL_LAST_CHANGED_TIME - Now | |||
* ''EPL_SERVICE_GROUP'' - Copy | |||
* ''EPL_SYSTEM_TYPE'' - Copy | |||
<!-- MEDIA LANDSCAPE YES --> | <!-- MEDIA LANDSCAPE YES --> | ||
= Appendix A: TEST PLAN = | = Appendix A: TEST PLAN = | ||
Line 393: | Line 596: | ||
{{TestPlan_CycleHeader | {{TestPlan_CycleHeader | ||
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }} | |Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }} | ||
|Title= | |Title=Admin (1) | ||
|Notes= | |Notes= | ||
}} <!--INSERT TESTS HERE --> {{TestPlan_Test | }} <!--INSERT TESTS HERE --> {{TestPlan_Test | ||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | ||
|Action=The | |Action='''Site:''' Ensure new fields can be added and maintained in the Site screen | ||
|Result=The | |Result=New fields can be set, changed and saved: | ||
* Job Status check-box | |||
* Optional Document Photo DDL | |||
* New Service Report format can be chosen, changed, saved and displayed in the grid. | |||
* Customer-specific Service Info flag can be set, changed and saved. | |||
* Customer-specific Service Diagnosis flag can be set, changed and saved. | |||
The tabs are well organised, making good use of space. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action='''Job Groups:''' Ensure new fields can be added and maintained in the Job Group screen | |||
|Result=New fields can be set, changed and saved: | |||
* Job Status check-box | |||
* Optional Document Photo DDL | |||
* New Service Report format can be chosen, changed, saved and displayed in the grid. | |||
* Customer-specific Service Info flag can be set, changed and saved. | |||
* Customer-specific Service Diagnosis flag can be set, changed and saved. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action='''Job Details:''' Ensure that standard Collection and Delivery jobs can be added, edited and saved through the screen. | |||
|Result=As expected | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Create a Service call | |||
|Result=The Service Call Info box should be displayed. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Do not enter any required fields - click Save | |||
|Result=Validation errors should be displayed for all missing fields | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Create a service with no Service ID or Job Code. Save. | |||
|Result=Service ID should default to the Job ID | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Create a service with no Service ID but has a Job Code. Save. | |||
|Result=Service ID should default to the Job Code. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Create a service with a duplicate Service ID. Save. | |||
|Result=An error should be displayed. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Ensure Service Group allows the required values. | |||
|Result=The DDL should allow entry of any Product Groups entered against the Service Products, as well as a default value ("Enter a Group"). | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Find a service job and click Details. | |||
|Result=The Service Details screen is displayed. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action='''Service Product Master:''' Enter a new product without a Model. | |||
|Result=This is allowed, the record is saved and can be retrieved and seen in the grid. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Enter a new product with a Model. | |||
|Result=This is allowed, the record is saved and can be retrieved and seen in the grid. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Find any product and edit it. | |||
|Result=The Model can be changed and saved. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_CycleFooter}} | |||
{{TestPlan_CycleHeader | |||
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }} | |||
|Title=PDA Tests | |||
|Notes=First, set up normal services under one job group (i.e. not ALS configuration), enabling all tabs, setting Document Photo to Enabled. | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Test a service through to Signature. | |||
|Result= | |||
* All tabs should show as normal | |||
* All original fields should show with original labels. | |||
* Validation should pass without checking new fields | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Back out of signature | |||
|Result=Allowed | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Complete call and Enter customer signature. Back out of engineer signature. | |||
|Result=Not allowed | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Complete Signature. | |||
|Result=Document Photo should start and not allow backout. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test= | |||
|Action=''Second, set up as ALS required above under a new Job Group. Ensure Site changes are made. Log out and log back in. Ensure all jobs completed from this point onwards and for the second Job Group.'' | |||
|Result= | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Test a service through to Signature (ensuring job status "Complete"). | |||
|Result= | |||
* Only required tabs should show | |||
* All new fields should show with new labels. | |||
* Validation should check new fields, while ignoring old fields. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Back out of signature | |||
|Result=Allowed | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Complete call and Enter customer signature. Back out of engineer signature. | |||
|Result=Not allowed | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Complete Signature. | |||
|Result=Unit should prompt whether document photo required. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Say Yes | |||
|Result=Document Photo should start. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Backout | |||
|Result=Returned to job list. Job Complete. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Complete another service call (ensuring job status "Postpone"). At Document Photo prompt say No. | |||
|Result=Returned to job list. Job Complete. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Complete another service call (ensuring job status "Complete"). At Document Photo prompt say Yes. | |||
|Result=Prompted to enter a photo. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Take an image, give a comment and complete. | |||
|Result=Returned to job list. Job Complete. | |||
|Remarks= | |||
|PassFail= | |||
}} {{TestPlan_CycleFooter}} | |||
{{TestPlan_CycleHeader | |||
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }} | |||
|Title=Admin (2) | |||
|Notes= | |||
}} {{TestPlan_Test | |||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |||
|Action=Search for the postponed job | |||
|Result=A copy should have been created (Pending), with all the correct fields copied. The original should be closed with Job Status "Postponed". | |||
|Remarks= | |Remarks= | ||
|PassFail= | |PassFail= | ||
}} {{TestPlan_Test | }} {{TestPlan_Test | ||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | ||
|Action= | |Action=Search for all completed jobs. Check the Service Details screens for these jobs. | ||
|Result= | |Result=Ensure that all required sections are shown in the screen (based on the job selected and the assigned Job Group) and that the entered details are present. | ||
|Remarks= | |Remarks= | ||
|PassFail= | |PassFail= | ||
}} {{TestPlan_Test | }} {{TestPlan_Test | ||
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | |Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }} | ||
|Action= | |Action=Check the Service Report for the completed call, in both Job Groups. | ||
|Result=The | |Result=The format for each job group is displayed correctly. | ||
|Remarks= | |Remarks= | ||
|PassFail= | |PassFail= |