SOP-Proof Of Delivery (EPOD) – Technical Aspects
Electronic Proof of Delivery (EPOD) is a value-added extension to Sales Order Processing that enables integration with remote hand-held devices to process EPOD data such as:
- Unique delivery reference
- Driver ID
- Electronic signature
- Printed name of signatory
- Date/Time of delivery
- GPS latitude/longitude of delivery
- No signature management
- Damages
- Returns
- Photographs
- General Notes
All data captured by the hand-held device can be stored in Prelude Desktop for the relevant order and with Stationery Design can be incorporated in the document, whether that be the order acknowledgement, delivery note or invoice.
Activation
EPOD is enabled as a DIAMOND.INI feature.
Add a DIAMOND.INI record from the following list depending on your chosen EPOD provider:EPOD=TAAP www.ontaap.com
New tables/fields
PARAMS.DBF
o EPODCO EPOD Company: Text (3), to identify live data from copy/test
o TAAPSERVER Server Address: Text (loads)
o TAAPCLIENT Client ID: Text (20)
o TAAPUSER Username: Text (20)
o TAAPPASS Password: Text (20)
Header/Details tables to record audit trail of communications with EPOD service provider
o Communications log tables of raw data downloaded from EPOD service provider
SOP_EPOD_H, SOP_EPOD_D, SOP_EPOD_IMAGES
Later can introduce a cleardown procedure
o Update the existing document tables with new fields to store live data
SOP_EPOD_H.DBF
o RECID Auto-increment
o PODID Unique 12-digit code including check-sum digit
o DOCTABLE Text (10), to identify the document type
o DOCID Text (20), to identify parent document
o DTIM Date/Time
o GPS_LAT Text (20)
o GPS_LONG Text (20)
o U_ID Text (20)
o SIG_IMAGE MEMO
o SIG_NAME Text (40)
o NO_SIG Text (200)
o DAMAGE Text (200)
o RETURNS Text (200)
o NOTES Text (200)
o PAID Logical (T/F)
o PAID_AMT Number (2 dp)
o PAY_METH Text (20)
o DOWN_DT Date/Time (DATAUP existing records with DTIM value)
o IMP_DT Date/Time (DATAUP existing records with DTIM value)
o IMP_TF Logical (T/F) (DATAUP existing records with .T.)
SOP_EPOD_D.DBF
o Not needed yet, but will be later for line items of damages, returns etc.
SOP_EPOD_IMAGES.DBF
o RECID Auto-increment
o PODID to identify SOP_EPOD_H parent record
o IMAGE MEMO
o DESC Text (200) – for imported description, if any
Reorganise Database
Add all new tables/fields to this routine
Company Utilities
Data Cleardown
o Add all new tables to the relevant cleardown routines
o Use PODID to identify the parent document
o Delete POD document/image records with the parent document records
o Let’s discuss if this is not clear
Stationery Design
Add new fields to Data Environment of all documents to take new SOP_EPOD_H.DBF data
o PODID 12-digit code
o DTIM Date/Time
o GPS_LAT Text (20)
o GPS_LONG Text (20)
o U_ID Text (20)
o SIG_IMAGE MEMO
o SIG_NAME Text (40)
o NO_SIG Text (200)
o DAMAGE Text (200)
o RETURNS Text (200)
o NOTES Text (200)
o PAID Logical (T/F)
o PAID_AMT Number (2 dp)
o PAYMENT_METHOD Text (20)
o IMAGE_001 MEMO
o IMAGE_002 MEMO
o IMAGE_003 MEMO
o IMAGE_004 MEMO
o IMAGE_005 MEMO
o IMAGE_006 MEMO
o IMAGE_007 MEMO
o IMAGE_008 MEMO
o IMAGE_009 MEMO
o IMAGE_010 MEMO
DATAUP existing records with associated images from SOP_EPOD_IMAGES
• First record image copied to IMAGE_001
• Second record image copied to IMAGE_002
• and so on up to a maximum of 10 images
To incorporate signature and images into stationery design
o in Picture/OLE Bound Control > Control source:
Body.SIG_IMAGE.PNG
Body.IMAGE_NNN.PNG
SOP Parameters
New ‘EPOD’ tab in SOP parameters form
EPOD=TAAP
Server Address: Text (loads)
Client ID: Text (20)
Username: Text (20)
Password: Text (20)
o These fields enabled for EPOD=TAAP (diamond.ini)
o In future, if we introduce other EPOD providers, some fields might be common and some new or different fields might be required.
Security
Set Access Levels form > S.O.P. tab
o Between “Deliver goods” and “Invoice orders”
“Proof of delivery”
To control the SOP “Proof of Delivery” menu item
Orders > Customers > Proof of Delivery
Between “Deliver Goods” and “Collect Goods”
o Download
Download the not-yet-downloaded EPOD data from the web service and store in the raw data tables with status ‘not submitted’
Do so with two distinct procedures
• This will allow us to re-run each procedure individually, e.g.
o after bad RAW data has been fixed
o on a schedule
Procedure 1: Download all new data, creating a SOP_EPOD_H record for each downloaded message and populate only the following fields
• DOWN_DT = current system date/time
o Assign the same value to all records in this download
• IMP_TF = .F.
• SUBMITTED = .F.
• RAW (as downloaded)
• MESSID (as downloaded)
• RECID (auto)
Procedure 2: Import data that was just downloaded
• For all records just downloaded, e.g. identified by DOWN_DT
o If RAW is in a recognised format that can be imported
Import it
IMP_DT = current system date/time
IMP_TF = .T.
o If RAW is not in a recognised format and cannot be processed
Skip it
Do nothing else
• If any data was not imported (e.g. IMP_TF=.F. or IMP_DT= blank), Warning:
o “Data was downloaded but some was in an unrecognised format and could not be not imported.”
o Process
To open “POD Processing” form
• Like the Job-Only ‘Web Submissions Processing’ forms
• Present all ‘not submitted, not deleted’ raw data entries, displaying all fields with only the following fields editable
o PODID
Not editable directly, but double click to display a Search/Find form that lists the source document PODIDs that do not exist in SOP_EPOD_H, with the SL Code and Name to aid the user. Apply a text-box filter to the listed PODIDs.
Needs work to exclude deleted PODs and never-used PODs (e.g. credit notes), maybe by adding an ‘Unmatched’ tab that lists all the source documents with PODIDs that do not exist in SOP_EPOD_H and allowing the user to do something with them to remove them from the search/find list, e.g. simply by emptying the PODID field of the source document header record.
o SIG_NAME
o NO_SIG
o DAMAGE
o RETURNS
o NOTES
o PAID_AMT
o PAYMENT_METHOD
• Three ‘show’ icons at the end of each line-item
o [Pen] To show signature image
o [Camera] To display multiple other images (if any)
o [Mag Glass] To preview document
• Actions [Post] [Del] [None]
o Do not need [Prov]
o [Post]
Save form record to live data tables
For each record in SOP_EPOD_IMAGES.DBF for this PODID, copy IMAGE field to IMAGE_NNN field in document’s Data Environment
• First record image copied to IMAGE_001
• Second record image copied to IMAGE_002
• and so on up to a maximum of 10 images
Mark raw data records as ‘submitted’
o [Del]
Mark raw data records as ‘deleted’ including associated records in SOP_EPOD_IMAGES.DBF
Reporter
Add SOP_EPOD_H.DBF to Reporter
o Report Data: “Sales Order EPOD Header”
Link SOP_EPOD_IMAGES.DBF
o Fields Select (SOP_EPOD_H)
EPOD ID PODID
Document type DOCTABLE
Document ID DOCID
Date/Time DTIM
GPS latitude GPS_LAT
GPS longitude GPS_LONG
User ID U_ID
Signature name SIG_NAME
No signature NO_SIG
Damages DAMAGE
Returns RETURNS
Notes NOTES
Paid PAID
Paid amount PAID_AMT
Payment method PAY_METH
Submitted SUBMITTED
Message ID MESSID