Date rolling utility
(Update demo data)
The utility dateroll can be used to roll the date forwards or backwards in a company.
Currently, the program must be compiled under debug sql mode to run correctly.
%> dateroll -?
Usage:
dateroll [-d numDays|-v] [-t dd/mm/yy] [-?]
-d Specify the number of days to roll transactions
-v Verbose mode
-t Maximum date to be applied in dd/mm/yy format
-? Print this help
%> dateroll -d 365 -v -t 31/01/09It traverses through the transaction file tran.dat and adds the number of days specified to any non zero dates found. If date calculated is higher than the Maximum date passed on with -t switch then maximum date will apply. It ignores any transaction with the EXTN flag on it.
The program also goes through the stock record, the debtor record and the creditor record. On the stock record, last movement(lastmov) and last purchase(lpdate) fields are updated.
On the debtor record, last invoice(lastinv) and last payment(lastpay) are updated.
On the creditor record, last transaction(last_tran) is updated.
Once the program has finished running, recalc_salesa must be run to recalculate the sales analysis.
Once that is done, the period end dates in glcont, gencont and pedaad must be updated manually.
A reindex,trrein, should be run to reindex by date and by master file.
Finally, recalc_salesa, should be run to recalculate the sales analysis.
