Contact Us
- Sales: sales@todaysystems.com
- Support: support@todaysystems.com
Purchase Order Fax Log
Introduction
The Purchase Order Fax Log produces a report by comparing the purchase order printed information from OCS against data extracted from the external faxing program. To do this the OCS system executes a program on the server (called pofaxlog on Linux/Unix or pofaxlog.bat on windows) which must extract, format and sort data from the faxing program. The pofaxlog program must reside in the users PATH and must be written specifically for the purchase order faxing program being used.
Requirements of pofaxlog program
The pofaxlog program is passed the start date and filename for the extracted fax data. All purchase orders faxed on or after the start date should be extracted. The fax data should be extracted to the filename passed from OCS, this file is a variable length ascii file with the following format :-
Field | Length | Comments |
company | 2 | |
department | 2 | |
order type | 2 | |
order no | 8 | |
date faxed | 8 | format CCYYMMDD |
time faxed | 8 | format HH:MM:SS |
faxed by | 20 | |
status | 24 | |
fax no | 14 | |
failed | 1 | Y - Failed, N - Succeeded |
The extracted fax data must be sorted by company, department, order type, order no, date faxed (descending) & time faxed (descending).
Example of pofaxlog
The following is an example of the pofaxlog unix script which extracts the faxing data from UXforms using a new UXforms formatting script usageOCS :-
:startdate=`echo $1 | cut -c7-8`"/"`echo $1 | cut -c5-6`"/"`echo $1 | cut -c3-4`output=$2faxcmd run usageOCS $startdate | awk 'substr($0,34,10) == " " {next}{ faxdate="20" substr($1,7,2) substr($1,4,2) substr($1,1,2)faxno = $5$6$7$8if ( $3 == "Success" ){failed="N"}else{failed="Y"}printf "%-14s%-8s%-8s%-20s%-24s%-14s%-1s\n",\$4,faxdate, $2, "", $3, faxno, failed}'| sort -o $output +0 -0.14 +0.14r -0.30r
Changes to usageOCS
The pofaxlog linux/unix script extracts data from UXforms using a formatting script usageOCS, this file is a copy of the script usage that is supplied with UXforms. The following changes were made to usageOCS after copying it from usage :-
#record()
record(rec)
{
local p, fmt, min, sec;
fmt = " %s %-10s %14s %16s\n";
p = date("%d/%m/%y %H:%M:%S",rec[6]);
p = format(fmt,p,TxResult[rec[7]],rec[14],rec[15]);
fputs(p,stdout);
}
))
The main section had the following lines commented out :-
. # glosdump(stdout,"ReportHeader");. # footer(dur);