home *** CD-ROM | disk | FTP | other *** search
- 4000 COLOR 7,0: REM ***************************************************************************************************
- 4010 REM "CHECKDIW" SUBROUTINE TO UPDATE BANK PAYEE STATEMENT RECORD
- 4020 REM IN FILE #2 WITH: DEPOSITS, INTEREST RECEIVED AND WITHDRAWALS
- 4030 REM *************************************************************************************************************
- 4040 GOSUB 260 'OPEN FILES #1,#2,#3
- 4050 GET #1,1 'GET THE BANK STATEMENT RECORD
- 4060 IF F1$="$" THEN GOTO 4140
- 4070 COLOR 7,0: PRINT " The Bank Statement record has been"
- 4080 PRINT " overlayed in FILE #1, Record #1"
- 4090 PRINT " By Payee # ";P1$
- 4100 COLOR 31,0: PRINT " Correct File then rerun this job": COLOR 7,0: GOTO 330
- 4110 REM ************************************************************************************************************
- 4120 REM WRITE BANK STATEMENT 'DIW' FIELD TO ACTIVITY LOG FILE 'BEFORE' IT IS UPDATED
- 4130 REM ************************************************************************************************************
- 4140 TC$="50"
- 4150 GOSUB 5680
- 4160 GOSUB 310
- 4170 REM ************************************************************************************************************
- 4180 REM DISPLAY TRANSACTION CODES WHICH MAY BE ENTERED
- 4190 REM ************************************************************************************************************
- 4200 CLS
- 4210 PRINT " Transaction Codes Are:"
- 4220 PRINT
- 4230 PRINT " 1 Deposits"
- 4240 PRINT " 2 Interest Received"
- 4250 PRINT " 3 Withdrawals"
- 4260 PRINT:
- 4270 PRINT " 9 Return To 'Job Choices Menu'"
- 4280 BEEP: PRINT:
- 4290 COLOR 0,7:PRINT " Enter Transaction Code: ";: Y = CSRLIN: X = POS(0)
- 4300 FIELDMAX% = 1: NUM.ONLY% = TRUE%: DEC.MINUS% = FALSE%: GOSUB 320
- 4310 C$ = DATU$: IF C$ = "9" THEN GOTO 5600
- 4320 IF C$ = "1" THEN TRANS$ = "Deposit ": GOTO 4360
- 4330 IF C$ = "2" THEN TRANS$ = "Interest ": GOTO 4360
- 4340 IF C$ = "3" THEN TRANS$ = "Withdrawal": GOTO 4360
- 4350 COLOR 31,0: PRINT "Invalid Code, Retry": COLOR 7,0: GOTO 4280
- 4360 PRINT: COLOR 0,7: PRINT " Enter ";TRANS$;" Amount:";: Y = CSRLIN: X = POS(0)
- 4370 FIELDMAX% = 9: NUM.ONLY% = TRUE%: DEC.MINUS% = TRUE%: GOSUB 320
- 4380 IF DATU$ = "" THEN GOTO 4360
- 4390 AMT = VAL(DATU$)
- 4400 LOCATE Y,X+1
- 4410 COLOR 0,7: PRINT USING "#####.##-";AMT: COLOR 7,0
- 4420 TDATE$ = SPACE$(8): LSET TDATE$ = DATE$
- 4430 YR$ = MID$(DATE$,9,2): MID$(TDATE$,7,2) = YR$
- 4440 COLOR 0,7: PRINT " Enter Transaction Date: ";TDATE$
- 4450 PRINT " (If not today's date) ";: Y = CSRLIN: X = POS(0)
- 4460 FIELDMAX% = 8: NUM.ONLY% = TRUE%: DEC.MINUS% = TRUE%: GOSUB 320
- 4470 IF DATU$<>"" THEN TDATE$ = DATU$
- 4480 T=CVS(S2$)
- 4490 IF C$<>"3" THEN T=T+AMT ELSE T=T-AMT
- 4500 LSET S2$=MKS$(T)
- 4510 T=CVS(S4$)
- 4520 IF C$<>"3" THEN T=T+AMT ELSE T=T-AMT
- 4530 LSET S4$=MKS$(T)
- 4540 REM ************************************************************************************************************
- 4550 REM UPDATE BANK PAYEE TRANSACTION RECORD IN FILE #2
- 4560 REM ************************************************************************************************************
- 4570 GET #2,1 'GET BANK STATEMENT'S FILE #2 FIRST RECORD
- 4580 SVADDRS%=1 'SAVE FILE#2 RECORD ADDRESS FOR CHAIN
- 4590 SAVEP2$=P2$ 'SAVE PAYEE CODE
- 4600 REM ************************************************************************************************************
- 4610 REM IF FIELD 'L$' IS NOT ZEROS THEN THERE IS A CHAINING RECORD, USE FIELD 'L$' POS. 127-128,
- 4620 REM TO GET THE LAST RECORD IN THE BANK STATEMENT FILE #2 RECORDS
- 4630 REM ************************************************************************************************************
- 4640 IF P2$="0000" THEN GOTO 4680
- 4650 PRINT: PRINT " Not Payee Code '0000'"
- 4660 PRINT " Chained Record has Payee Code ";P2$
- 4670 COLOR 31,0: PRINT " Correct ERROR before rerunning job": COLOR 7,0: GOTO 330
- 4680 CHANE%=CVI(L$)
- 4690 IF CHANE%=0 THEN GOTO 4800
- 4700 IF (CHANE%>M1%) AND (CHANE%<(M2%+1)) THEN GET #2,CHANE%: SVADDRS%=CHANE%: SAVEP2$=P2$: GOTO 4640
- 4710 PRINT " Chaining record error on Payee ";P2$
- 4720 PRINT USING " Chaining field is ####";CHANE%
- 4730 PRINT " Valid Chaining records are ";M1%+1;"-";M2%
- 4740 COLOR 31,0: PRINT " Correct ERROR Before rerunning job"
- 4750 COLOR 7,0: GOTO 330 'ERROR ON FILE, DO NOT CONTINUE
- 4760 REM ************************************************************************************************************
- 4770 REM TEST CHECK NO. FIELD FOR ZEROS TO FIND NEXT SLOT FOR ENTERING THIS TRANSACTION.
- 4780 REM EACH FILE #2 RECORD HOLDS 8 TRANSACTIONS.
- 4790 REM ************************************************************************************************************
- 4800 GOSUB 270 'MOVE FILE #2 FIELDS TO DATA ARRAY
- 4810 FOR I = 1 TO 8
- 4820 IF CHEK1%(I) = 0 THEN GOTO 4890
- 4830 NEXT I
- 4840 GOSUB 290 'CREATE A CHAIN FILE #2 RECORD FOR THIS PAYEE
- 4850 GOTO 4800 'FIND FILE #2 RECORD SLOT FOR STORING THIS TRANSACTION
- 4860 REM ************************************************************************************************************
- 4870 REM MOVE DATA TO FIRST AVAILABLE FILE #2 SLOT
- 4880 REM *************************************************************************************************************
- 4890 CHEK2$(I) = SPACE$(1)
- 4900 CHEK3$(I) = TDATE$
- 4910 CHEK4(I) = AMT
- 4920 IF C$="1" THEN CHEK1%(I) = -1
- 4930 IF C$="2" THEN CHEK1%(I) = -2: CHEK2$(I)="C"
- 4940 IF C$="3" THEN CHEK1%(I) = -3
- 4950 REM ************************************************************************************************************
- 4960 REM MOVE DATA TO AUDIT TRAIL RECORD FIELDS
- 4970 REM ************************************************************************************************************
- 4980 TC$="51"
- 4990 CN%=CHEK1%(I)
- 5000 AC$=CHEK2$(I)
- 5010 TD$=TDATE$
- 5020 PA%=SVADDRS%
- 5030 PC$=P2$
- 5040 PA$=A1$
- 5050 TAMT=AMT
- 5060 LACTM%=0
- 5070 LACTS%=0
- 5080 LAMT=0
- 5090 BDIW=0
- 5100 BAMT=0
- 5110 IF BOOKS$="Y" THEN GOTO 5170
- 5120 GOSUB 310 'EXECUTED ONLY IF NOT USING THE SIMPLE BOOKKEEPING SYSTEM OPTION
- 5130 GOTO 5500
- 5140 REM **************************************************************************************************************
- 5150 REM DISTRIBUTE THE 'DIW' TRANSACTION AMOUNT TO THE SIMPLE BOOKKEEPING SYSTEM ACCOUNTS
- 5160 REM **************************************************************************************************************
- 5170 T=AMT 'TRANSACTION AMOUNT TO DISTRIBUTE BY ACCOUNT NUMBER
- 5180 REM ---------------------WITHDRAWALS ARE DEBITED TO CASH-ON-HAND--------------------------------------------------
- 5190 IF CN% > -3 THEN GOTO 5250
- 5200 LACTM% = 100
- 5210 LACTS% = 2
- 5220 LAMT = AMT
- 5230 GOTO 5470
- 5240 REM --------------------------------------------------------------------------------------------------------------
- 5250 CLS
- 5260 PRINT " Enter Income Account Numbers and"
- 5270 PRINT " Amounts for BOOKKEEPING SYSTEM"
- 5280 PRINT: PRINT USING " Transaction Amount is: #####,.##-";T
- 5290 PRINT " Enter the following:"
- 5300 COLOR 0,7: PRINT SPC(10);"Major Account #: ";: Y = CSRLIN: X = POS(0)
- 5310 FIELDMAX% = 4: NUM.ONLY% = TRUE%: DEC.MINUS% = FALSE%: GOSUB 320
- 5320 IF DATU$ = "" THEN GOTO 5300
- 5330 IF LEN(DATU$)<>4 THEN PRINT " Account is a 4 digit code, retry": GOTO 5300
- 5340 LACTM% = VAL(DATU$)
- 5350 IF LACTM% = 0 THEN COLOR 31,0: PRINT NOTNUM$: GOTO 5300
- 5360 PRINT: COLOR 0,7: PRINT SPC(12);"Record Number: ";: Y = CSRLIN: X = POS(0)
- 5370 FIELDMAX% = 3: NUM.ONLY% = TRUE%: DEC.MINUS% = FALSE%: GOSUB 320
- 5380 IF DATU$ = "" THEN GOTO 5360
- 5390 LACTS% = VAL(DATU$)
- 5400 IF LACTS% > 0 AND LACTS% < (M10% + M11% + 1) THEN GOTO 5420
- 5410 COLOR 31,0: PRINT " Enter a valid Record Number": GOTO 5360
- 5420 PRINT: COLOR 0,7: PRINT " Amount for this Account: ";: Y = CSRLIN: X = POS(0)
- 5430 FIELDMAX% = 9: NUM.ONLY% = TRUE%: DEC.MINUS% = TRUE%: GOSUB 320
- 5440 IF DATU$ = "" THEN GOTO 5420
- 5450 LAMT = VAL(DATU$)
- 5460 LOCATE Y,X+1: COLOR 0,7: PRINT USING "#####.##-";LAMT: COLOR 7,0
- 5470 GOSUB 310 'WRITE AUDIT TRAIL RECORD
- 5480 T = T - LAMT
- 5490 IF ABS(T) > (8.999999E-03) THEN TAMT=0: PRINT USING " Undistributed amount is: #####,.##-";T: GOTO 5290
- 5500 GOSUB 280 'MOVE DATA ARRAY TO FILE #2 I/O BUFFER
- 5510 REM ************************************************************************************************************
- 5520 REM PUT FILE #1 AND FILE #2 RECORD AFTER DEPOSIT, INTEREST, AND WITHDRAWAL UPDATES.
- 5530 REM ************************************************************************************************************
- 5540 PUT #1,1 'BANK STATEMENT FILE #1 RECORD UPDATED
- 5550 PUT #2,SVADDRS% 'BANK STATEMENT FILE #2 LAST CHAINING RECORD UPDATED
- 5560 GOTO 4200 'RETURN TO DISPLAY TRANSACTION CODES MENU
- 5570 REM ************************************************************************************************************
- 5580 REM WRITE BANK STATEMENT 'DIW' FIELD TO ACTIVITY LOG FILE 'AFTER' IT IS UPDATED
- 5590 REM *************************************************************************************************************
- 5600 TC$="52"
- 5610 GOSUB 5680
- 5620 GOSUB 310
- 5630 CLOSE 'CLOSE ALL FILES
- 5640 GOTO 250 'RETURN TO JOB CHOICES MENU DISPLAY
- 5650 REM **************************************************************************************************************
- 5660 REM SUBROUTINE TO MOVE 'BEFORE' AND 'AFTER' D-I-W DATA TO 'AUDTRAIL' FILE FIELDS
- 5670 REM **************************************************************************************************************
- 5680 CN%=0
- 5690 AC$=SPACE$(1)
- 5700 TD$=SPACE$(8)
- 5710 PA%=1
- 5720 PC$=P1$
- 5730 PA$=A1$
- 5740 TAMT=0
- 5750 LACTM%=0
- 5760 LACTS%=0
- 5770 LAMT=0
- 5780 BDIW=CVS(S2$)
- 5790 BAMT=CVS(S3$)
- 5800 RETURN
- 9000 GOTO 9000 'CHAIN MERGE AREA LAST STATEMENT
- LACTS%=0
- 5770 LAM