FS 314964 Palletforce Interface changes: Difference between revisions

From Calidus HUB
No edit summary
mNo edit summary
 
(11 intermediate revisions by the same user not shown)
Line 24: Line 24:
== Client Requirement  ==
== Client Requirement  ==
Palletforce Interface changes. Add Delivery Status Code and POD Notes.
Palletforce Interface changes. Add Delivery Status Code and POD Notes.
[[File:FS_314964_1.PNG|600px|border]]


== Solution Overview  ==
== Solution Overview  ==
Line 36: Line 34:
== Scope ==
== Scope ==
* These changes will be made in the latest version of the {{#var:System}} system.
* These changes will be made in the latest version of the {{#var:System}} system.
* These changes will only be made to the Android version of the PDA client.
<!-- NEW PAGE -->


<!-- NEW PAGE -->
= Set-up  =
= Set-up  =


Line 69: Line 69:


The Reason Code Maintenance screen (Reason_code.aspx) will be altered to include a new 'Type' of 'Claused' in the 'Type' drop-down list.  
The Reason Code Maintenance screen (Reason_code.aspx) will be altered to include a new 'Type' of 'Claused' in the 'Type' drop-down list.  
Note the text in the list will be displayed as 'Claused' but the value stored in the database will be 'CLA'.
Reason codes of this type will be used to indicate a complete delivery with exceptions, e.g. 'PODD' or 'PODC'.
Reason codes of this type will be used to indicate a complete delivery with exceptions, e.g. 'PODD' or 'PODC'.


Line 83: Line 84:
In the Container Details popup box, the user is currently able to enter free text within the Claused Delivery field.  
In the Container Details popup box, the user is currently able to enter free text within the Claused Delivery field.  
The program will be changed to check the 'Claused Delivery' flags mentioned above. If the flag is set to the appropriate value and if there are any 'Claused' type reason codes defined for the Job Group in question,  
The program will be changed to check the 'Claused Delivery' flags mentioned above. If the flag is set to the appropriate value and if there are any 'Claused' type reason codes defined for the Job Group in question,  
then a drop-down list will appear labelled as 'Claused Reason'. The user will be able to choose a reason code from the list. The list will not be made a required field.
then a drop-down list will appear labelled as 'Claused Reason'. The user will be expected to choose a reason code from the list. The list will be made a required field.


== Palletforce File Export Changes ==
== Palletforce File Export Changes ==
Two extra fields will be added to the current layout for the outbound Palletforce file:
The file extension for the current process is set as .epod. This will be altered to be .epd.
 
In addition, two extra fields will be added to the current layout for the outbound Palletforce file:


* Delivery Status Code - to be set as EPL_REASON_CODE of EPOD_CONTAINER if populated. If not then set as 'POD'.
* Delivery Status Code - to be set as EPL_REASON_CODE of EPOD_CONTAINER if populated. If not then set as 'POD'.
* POD Notes - to be set as EPL_CUST_COMMENTS of EPOD_CONTAINER if populated. If not and EPL_REASON_CODE of EPOD_CONTAINER is populated, then set as EPL_DESCRIPTION of EPOD_REASON_CODE for that reason code record. Otherwise, this field should be left blank.
* POD Notes - to be set as EPL_CUST_COMMENTS of EPOD_CONTAINER if populated. If not and EPL_REASON_CODE of EPOD_CONTAINER is populated, then set as EPL_DESCRIPTION of EPOD_REASON_CODE for that reason code record. Otherwise, this field should be left blank.


Note that the layout is to remain as a comma-separated file so the new fields will need to be separated with extra commas.  
Note that the layout is to remain as a comma-separated file so the new fields will need to be separated with extra commas. All fields will be checked for the existence of commas entered as part of the text. If they exist, they will be replaced with space characters before the message is sent.
 
Note that cancelled containers will not be sent as part of the process. This may be expected to change in future. In this scenario further changes may be required.


== Message Process Changes ==
== Message Process Changes ==
Line 105: Line 110:


The login request process will be altered to allow the EPL_CLAUSE_DELIVERY flag to be populated when Job Group level data is passed in.
The login request process will be altered to allow the EPL_CLAUSE_DELIVERY flag to be populated when Job Group level data is passed in.
The following is added for clarification purposes following testing:
The Claused Container pop-up screen will only become visible if the site level flag is set to 'Y'.
The decision to prompt for the Reason Code will then be dependant on the Job Group level flag.


The Claused Container pop-up screen will be altered to check for the EPL_CLAUSE_DELIVERY of PDA_JOB_GROUPS flag.  
The Claused Container pop-up screen will be altered to check for the EPL_CLAUSE_DELIVERY of PDA_JOB_GROUPS flag.  
If this is set to '2', then the program will check for the existence of PDA_REASON_CODES for the Job Group in question
If this is set to '2', then the program will check for the existence of PDA_REASON_CODES for the Job Group in question
of Reason Type 'CLA'.
of Reason Type 'CLA'.
If records exist then a new drop-down list will be displayed Labelled as 'Claused Reason' to allow the user to choose the reason for marking the delivery as claused. The list will not be made a required field.
If records exist then a new drop-down list will be displayed Labelled as 'Claused Reason'. The user will be expected to choose the reason for marking the delivery as claused. The list will be a required field.




Line 115: Line 125:


= Appendix A: TEST PLAN  =
= Appendix A: TEST PLAN  =
{{TestPlan_Header
{{TestPlan_Header
|Title={{#var:Doc_Title}}
|Title={{#var:Doc_Title}}
Line 123: Line 134:
|Objective=To test the additional fields required for the Palletforce export process are populated. Check that the claused reason code field is prompted for on the device.
|Objective=To test the additional fields required for the Palletforce export process are populated. Check that the claused reason code field is prompted for on the device.
}}
}}


{{TestPlan_CycleHeader
{{TestPlan_CycleHeader
Line 131: Line 141:
}} {{TestPlan_Test
}} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Log into Job Group Maintenance. Check that a 'Claused Reason' drop-down list option is available in the PDA tab. Check the default value is set to 'Dont' prompt'
|Action=Log into Job Group Maintenance. Check that a 'Claused Reason' drop-down list option is available in the PDA tab. Check the default value is set to 'Don't prompt'
|Result=Each Job Group can be configured to use 'Claused Reasons' or not.
|Result=Each Job Group can be configured to use 'Claused Reasons' or not.
|Remarks= |PassFail= }} {{TestPlan_Test
|Remarks= |PassFail= }} {{TestPlan_Test
Line 141: Line 151:
|Action=Enter/Find a job that is 'In Progress'. Enter the Details screen and then click 'Select' on one of the Container records.
|Action=Enter/Find a job that is 'In Progress'. Enter the Details screen and then click 'Select' on one of the Container records.
|Result=The Option to enter a 'Claused Reason' should now be available.  
|Result=The Option to enter a 'Claused Reason' should now be available.  
|Remarks= |PassFail= }} {{TestPlan_CycleFooter}}
|Remarks= |PassFail= }} {{TestPlan_Test
 
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
 
|Action=Delete the Claused Reason Code definitions from Reason Code Maintenance and repeat the last test.
{{TestPlan_CycleHeader
|Result=The user should no longer be able to enter a 'Claused Reason'.
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}
|Remarks= |PassFail= }}
|Title=Export process - Palletforce
{{TestPlan_Test
}} <!--INSERT TESTS HERE --> {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Create an outbound Palletforce Export file.
|Action=Add the Claused Reason Code definitions back but set the job group not to prompt for Claused Reason codes.  
|Result=Check the Claused Reason Code and corresponding text are included in the output file produced.
|Result=The user should no longer be able to enter a 'Claused Reason'.  
|Remarks= |PassFail= }} {{TestPlan_CycleFooter}}  
|Remarks= |PassFail= }}{{TestPlan_CycleFooter}}


{{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=PDA - Process
|Title=PDA - Process
|Notes=Ensure a UDF configuration is set up for all areas (Info, Diagnosis, Pre-work, Post-work) for the Job Group of the job being processed.
|Notes=Check the user is prompted for a Claused Reason Code when appropriate.  
}} <!--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=Click the ''Info'' tab
|Action=Process a job for the Job Group in question. Enter the Claused Reasons canvas.
|Result=All fields required to be entered at Info stage should be shown on the screen. A Pre-work button should be shown, labelled correctly.
|Result=The user should be prompted for a Claused reason code as well as the current Claused free text box.
|Remarks= |PassFail= }} {{TestPlan_Test
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click a Text field.
|Result=A Text keyboard is shown to enter data.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Enter data
|Action=Delete the Claused Reason Code definitions from Reason Code Maintenance and repeat the last test.
|Result=The data entered should be shown in the field.
|Result=The user should no longer be able to enter a 'Claused Reason'.  
|Remarks= |PassFail= }} {{TestPlan_Test
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the Barcode button (requires a device).
|Action=Add the Claused Reason Code definitions back but set the job group not to prompt for Claused Reason codes.
|Result=The Barcode Scan screen should be shown.
|Result=The user should no longer be able to enter a 'Claused Reason'.
|Remarks= |PassFail= }} {{TestPlan_Test
|Remarks= |PassFail= }} {{TestPlan_CycleFooter}}
 
{{TestPlan_CycleHeader
|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}
|Title=Export process - Palletforce
|Notes=Check that two new fields are included at the end of each line. Check that the file extension of the file produced is .epd.
}} <!--INSERT TESTS HERE --> {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Scan a barcode
|Action=Create an outbound Palletforce Export file for a job that has a Claused Reason and Claused Reason text.
|Result=The data scanned should be shown in the field.
|Result=Check the Claused Reason Code and Claused text are included in the output file produced.
|Remarks= |PassFail= }} {{TestPlan_Test
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click a Numeric field
|Action=Create an outbound Palletforce Export file for a job that has a Claused Reason but no Claused Reason text.
|Result=A Number keyboard is shown to enter data.
|Result=Check the Claused Reason Code and Reason Code description are included in the output file produced.
|Remarks= |PassFail= }} {{TestPlan_Test
|Remarks= |PassFail= }} {{TestPlan_CycleFooter}}  
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Enter data
|Result=The data entered should be shown in the field.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Check and Uncheck Options and Check Box elements
|Result=The data should be entered as expected.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Check a Drop-Down List (DDL) field.
|Result=The default value should be selected.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the DDL field.
|Result=All options should be displayed for entry.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Select a different one.
|Result=The selected data should be shown in the field.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the '''Pre-work''' button.
|Result=A pop-up window should be displayed, showing the required fields in a scrolling view. The '''Save''' and '''Pre-completed''' buttons should be displayed.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Do not enter any required data - click the '''Save''' button.
|Result=A validation failure message should be displayed. The offending field should be highlighted in the screen.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click '''Pre-completed'''
|Result=A confirmation pop-up should appear ("Please confirm that Risk Assessments have been pre-completed.), allowing Yes or No entry.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click '''No'''
|Result=The Pop-up screen should stay - no action taken.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click '''Pre-completed''' and '''Yes'''.
|Result=The ''Info'' tab should be re-displayed, as the Pre-work checks have been cancelled.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the '''Pre-work''' button and enter all information. Click the '''Confirm''' button.
|Result=The ''Info'' tab should be re-displayed, as the Pre-work checks have been saved.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the ''Diagnosis'' tab
|Result=All fields required to be entered at Diagnosis stage should be shown on the screen. A Post-work button should be shown, labelled correctly.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Check entering data.
|Result=As expected.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the '''Post-work''' button.
|Result=A pop-up window should be displayed, showing the required fields in a scrolling view. The '''Save''' and '''Pre-completed''' buttons should be displayed.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Do not enter any required data - click the '''Save''' button.
|Result=A validation failure message should be displayed. The offending field should be highlighted in the screen.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click '''Pre-completed'''
|Result=A confirmation pop-up should appear ("Please confirm that Risk Assessments have been pre-completed.), allowing Yes or No entry.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click '''No'''
|Result=The Pop-up screen should stay - no action taken.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click '''Pre-completed''' and '''Yes'''.
|Result=The ''Info'' tab should be re-displayed, as the Post-work checks have been cancelled.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Click the '''Post-work''' button and enter all information. Click the '''Save''' button.
|Result=The ''Info'' tab should be re-displayed, as the Post-work checks have been saved.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Before Pre-work and Post-work validations have been completed, click '''Done'''.
|Result=Validation messages should be displayed, showing the errors.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Before all required data on Info and Diagnosis tabs is entered, click '''Done'''
|Result=Validation messages should be displayed, showing the errors. The first offending field should be highlighted on the tab.
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=When all complete, click '''Done'''
|Result=All data is saved and the job moves on to Completion (Signature Entry).
|Remarks= |PassFail= }} {{TestPlan_Test
|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.01 }} }}
|Action=Complete the Job.
|Result=The job is sent back to the server (check the Server web-service logs). The job is saved, with all UDF data saved into the correct new fields (check the database).
|Remarks= |PassFail= }} {{TestPlan_CycleFooter}}
 


<!-- MEDIA LANDSCAPE NO -->  
<!-- MEDIA LANDSCAPE NO -->  
{{Doc_Appendix
{{Doc_Appendix
|Appendix=B
|Appendix=B
|Estimate=N
|Estimate=Y
|Glossary=EPOD
|Glossary=EPOD
|Ref1= 
|Ref1= 
Line 286: Line 204:
|REQ=0
|REQ=0
|EST=0
|EST=0
|FS=0
|FS=1.5
|TS=0
|TS=0
|DEV=0
|DEV=5.0
|ST=0
|ST=1.0
|IMP=0
|IMP=0.5
|Client={{#var:Client}}
|Client={{#var:Client}}
|Year={{#var:Year}}
|Year={{#var:Year}}

Latest revision as of 15:03, 19 March 2014





Aptean Logo.png







PartnerLink

Palletforce Interface Changes


CALIDUS ePOD

7th February 2014 - 0.1
Reference: FS 314964












































Functional Overview

Client Requirement

Palletforce Interface changes. Add Delivery Status Code and POD Notes.

Solution Overview

The Palletforce export format will be altered in line with their recent format changes.

The export format will be altered to include two extra fields: Delivery Status Code and POD Notes used to indicate that the delivery has been successful but with exceptions or minor damages.

In order to achieve this, a reason code may be prompted for when making a successful delivery.

Scope

  • These changes will be made in the latest version of the CALIDUS ePOD system.
  • These changes will only be made to the Android version of the PDA client.


Set-up

Pre-requisites

Menu Structure

None

Data

New "Clause" type reason codes will be expected to be setup for the Palletforce Job Group. Initially reason codes of 'PODC' and 'PODD' will be expected to be defined with descriptions of 'Delivered with Exception' and 'Delivered with Damage' respectively.

Functional Description

Database Changes

Table EPOD_JOB_GROUPS requires the following modifications:

  • EPL_CLAUSE_DELIVERY (New field) - nvarchar(1)

The existing EPOD_JOB_GROUP DAL object will be changed to include:

  • EPL_CLAUSE_DELIVERY of EPOD_JOB_GROUP

Existing packages will be modified to allow the creating, editing and selecting of the new fields, including but not limited to:

  • EPOD_JOB_GROUPS_INSERT
  • EPOD_JOB_GROUPS_SEARCH
  • EPOD_JOB_GROUPS_SELECT
  • EPOD_JOB_GROUPS_SELECT_UPDATED_DATA
  • EPOD_JOB_GROUPS_UPDATE

Admin Changes

The Reason Code Maintenance screen (Reason_code.aspx) will be altered to include a new 'Type' of 'Claused' in the 'Type' drop-down list. Note the text in the list will be displayed as 'Claused' but the value stored in the database will be 'CLA'. Reason codes of this type will be used to indicate a complete delivery with exceptions, e.g. 'PODD' or 'PODC'.

The Job Group Maintenance screen (job_group.aspx) will be altered to include a 'Claused Delivery' flag. This will appear as a drop-down list in the 'PDA' tab. The list will have three possible values:

  • '0' - don't prompt for a claused delivery description or claused reason code
  • '1' - prompt for a claused delivery description without a claused reason code
  • '2' - prompt for both a claused delivery description and a claused reason code

Note that if the current Site level 'Claused Delivery' tickbox is set, then this will mean that the 'Claused Delivery' text box will appear regardless of the value of the Job Group setting.

The Container Maintenance screen (product_containers.aspx) will be altered to allow the user to choose a reason code when entering a Claused Delivery. In the Container Details popup box, the user is currently able to enter free text within the Claused Delivery field. The program will be changed to check the 'Claused Delivery' flags mentioned above. If the flag is set to the appropriate value and if there are any 'Claused' type reason codes defined for the Job Group in question, then a drop-down list will appear labelled as 'Claused Reason'. The user will be expected to choose a reason code from the list. The list will be made a required field.

Palletforce File Export Changes

The file extension for the current process is set as .epod. This will be altered to be .epd.

In addition, two extra fields will be added to the current layout for the outbound Palletforce file:

  • Delivery Status Code - to be set as EPL_REASON_CODE of EPOD_CONTAINER if populated. If not then set as 'POD'.
  • POD Notes - to be set as EPL_CUST_COMMENTS of EPOD_CONTAINER if populated. If not and EPL_REASON_CODE of EPOD_CONTAINER is populated, then set as EPL_DESCRIPTION of EPOD_REASON_CODE for that reason code record. Otherwise, this field should be left blank.

Note that the layout is to remain as a comma-separated file so the new fields will need to be separated with extra commas. All fields will be checked for the existence of commas entered as part of the text. If they exist, they will be replaced with space characters before the message is sent.

Note that cancelled containers will not be sent as part of the process. This may be expected to change in future. In this scenario further changes may be required.

Message Process Changes

The message process class (messageprocess.cs) that sends data to the PDA will need to verified to ensure that the EPL_CLAUSE_DELIVERY flag is sent as part of the Job Group message.

Pda Changes

Table PDA_JOB_GROUPS requires the following modifications:

  • EPL_CLAUSE_DELIVERY (New field) - nvarchar(1)

The existing PDA_JOB_GROUPS DAL object will be changed to include:

  • EPL_CLAUSE_DELIVERY of PDA_JOB_GROUPS

The login request process will be altered to allow the EPL_CLAUSE_DELIVERY flag to be populated when Job Group level data is passed in.

The following is added for clarification purposes following testing: The Claused Container pop-up screen will only become visible if the site level flag is set to 'Y'. The decision to prompt for the Reason Code will then be dependant on the Job Group level flag.

The Claused Container pop-up screen will be altered to check for the EPL_CLAUSE_DELIVERY of PDA_JOB_GROUPS flag.

If this is set to '2', then the program will check for the existence of PDA_REASON_CODES for the Job Group in question of Reason Type 'CLA'. If records exist then a new drop-down list will be displayed Labelled as 'Claused Reason'. The user will be expected to choose the reason for marking the delivery as claused. The list will be a required field.


Appendix A: TEST PLAN

Test Script / Scenario ReferencePalletforce Interface ChangesCall Number(s): 314964
Test Script / Scenario DescriptionTo test the production of the outbound Palletforce export process to ensure the new Claused delivery fields are included in CALIDUS ePODPASS / ISSUES / FAIL
Menu AccessJob Group Maintenance, Reason Code Maintenance 
Pre-requisitesEnsure that Palletforce job groups are defined against the required sitesTested By:
 
Test ObjectiveTo test the additional fields required for the Palletforce export process are populated. Check that the claused reason code field is prompted for on the device.Date:
 



Step Action Result Remarks P/F
1 Admin      
  Setup Job Groups to allow Claused Reasons to be sent. Setup Claused Reason Codes in Reason Code Maintenance.      
1.01 Log into Job Group Maintenance. Check that a 'Claused Reason' drop-down list option is available in the PDA tab. Check the default value is set to 'Don't prompt' Each Job Group can be configured to use 'Claused Reasons' or not.    
1.02 Log into Reason Code Maintenance. Check that new 'Claused' reason codes can be defined. Reason Codes of type 'Claused' can be created.    
1.03 Enter/Find a job that is 'In Progress'. Enter the Details screen and then click 'Select' on one of the Container records. The Option to enter a 'Claused Reason' should now be available.    
1.04 Delete the Claused Reason Code definitions from Reason Code Maintenance and repeat the last test. The user should no longer be able to enter a 'Claused Reason'.    
1.05 Add the Claused Reason Code definitions back but set the job group not to prompt for Claused Reason codes. The user should no longer be able to enter a 'Claused Reason'.    


Step Action Result Remarks P/F
2 PDA - Process      
  Check the user is prompted for a Claused Reason Code when appropriate.      
2.01 Process a job for the Job Group in question. Enter the Claused Reasons canvas. The user should be prompted for a Claused reason code as well as the current Claused free text box.    
2.02 Delete the Claused Reason Code definitions from Reason Code Maintenance and repeat the last test. The user should no longer be able to enter a 'Claused Reason'.    
2.03 Add the Claused Reason Code definitions back but set the job group not to prompt for Claused Reason codes. The user should no longer be able to enter a 'Claused Reason'.    


Step Action Result Remarks P/F
3 Export process - Palletforce      
  Check that two new fields are included at the end of each line. Check that the file extension of the file produced is .epd.      
3.01 Create an outbound Palletforce Export file for a job that has a Claused Reason and Claused Reason text. Check the Claused Reason Code and Claused text are included in the output file produced.    
3.02 Create an outbound Palletforce Export file for a job that has a Claused Reason but no Claused Reason text. Check the Claused Reason Code and Reason Code description are included in the output file produced.    


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 650 £0.00
Change Request Evaluation 0.00 0.00 650 £0.00
Functional Specification 1.50 1.50 650 £975.00
Technical Specification 0.00 0.00 650 £0.00
Development 5.00 5.00 650 £3,250.00
Testing and Release 1.00 1.00 650 £650.00
Implementation 0.50 0.50 650 £325.00
Project Management First argument to "number_format" must be a number. First argument to "number_format" must be a number. 650 £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.   £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
1   


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


Phil Harding

OBS Project Manager
_____________________________

Andrew Allison

Client Representative
_____________________________