home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpmug / cpmug043.ark / A_P010.BAS < prev    next >
BASIC Source File  |  1984-04-29  |  13KB  |  420 lines

  1.  
  2.     REMARK    **********************************************
  3.     REMARK    *    ACCOUNTS PAYABLE TRANSACTION ENTRY PRGM *
  4.     REMARK    *    (A/P010.BAS)      VERS OF 4 PM  1/30/78 *
  5.     REMARK    **********************************************
  6.  
  7.     DIM C(27),D(27),W$(5),M$(5),A3$(10),P(6),Y(2)
  8. %INCLUDE CURSOR
  9.     DATA "INVOICE"," "," ","CR MEMO","DB MEMO","NEW","DELETE",\
  10.     "MODIFY"
  11.     RESTORE
  12.     FOR I%=1 TO 8: READ A3$(I%): NEXT I%
  13.     MASKA$=" ######.##"
  14.     MASKB$="######"
  15.     MASKC$="######.#     #######.##  "
  16.     MASKD$="##)     ######       #######.##"
  17.     DEF FNR(Z9)=(INT(ABS(Z9)*100+.5)/100)*SGN(Z9)            REMARK    ROUND TO NEAREST CENT
  18.     DEF FND(Z9)=FNR(Z9)*SGN(D2)                    REMARK    USED IN G/L & JOB POSTING AMOUNT VERIFICATIONS
  19.     GOTO 6000
  20.  
  21. %INCLUDE SUBS1
  22. %INCLUDE BINSEARC
  23. %INCLUDE READINV
  24. %INCLUDE WRITEINV
  25. %INCLUDE READVEND
  26. %INCLUDE A/P-INFO
  27. 10.60    RETURN                                REMARK    THIS SPACE FOR G/L BINARY SEARCH ROUTINE
  28. .314    RETURN                                REMARK    THIS SPACE FOR G/L EXTENT INFORMATION READ ROUTINE
  29.  
  30.  
  31. 5000    PRINT CLEAR.SCREEN$;"A/P TRANSACTION ENTRY"
  32.     RETURN 
  33.  
  34.  
  35. 5010    IF F=0 OR F>9 THEN GOTO 5040                    REMARK    BRANCH TO ENTER DATA IN FIELD "F"
  36.     ON F GOTO 5040,5050,5060,5070,5080,5090,5100,5110,5120
  37.  
  38. 5040    X1=462:X2=8:X3=0:X4=0:GOSUB 345                    REMARK    ENTER PURCHASE ORDER NO.
  39.     W2$=X0$
  40.     RETURN 
  41.  
  42. 5050    X1=526:X2=2:X3=0:X4=0:GOSUB 345                    REMARK    ENTER BUYER
  43.     W3$=X0$
  44.     RETURN 
  45.  
  46. 5060    X1=590:X2=6:X3=0:X4=999999:GOSUB 345                REMARK    ENTER CHECK REGISTER NO.
  47.     D(25)=X0
  48.     RETURN 
  49.  
  50. 5070    X1=654:GOSUB 673                        REMARK    ENTER INVOICE DATE
  51.     PRINT
  52.     D(23)=X0
  53.     RETURN 
  54.  
  55. 5080    X1=718:GOSUB 673                        REMARK    ENTER AGE DATE
  56.     PRINT
  57.     D(24)=X0
  58.     RETURN 
  59.  
  60. 5090    IF W1%=4 THEN 5150                        REMARK    ENTER INVOICE OR DEBIT MEMO AMOUNT
  61.     X1=430:X2=9:X3=0:X4=999999.99:GOSUB 345
  62.     C(23)=X0
  63.     X1=429:GOSUB 210
  64.     PRINT USING MASKA$;C(23)
  65.     GOSUB 5140
  66.     RETURN 
  67.  
  68. 5100    X1=498:X2=5:X3=0:X4=100:GOSUB 345                REMARK    ENTER DISCOUNT RATE
  69.     X1=493:GOSUB 210
  70.     C(27)=X0
  71.     PRINT USING MASKA$;C(27)
  72.     GOSUB 5140
  73.     RETURN 
  74.  
  75. 5110    X1=622:X2=9:X3=0:X4=999999.99:GOSUB 345                    REMARK    ENTER FREIGHT AMOUNT
  76.     C(25)=FNR(X0)
  77.     X1=621:GOSUB 210
  78.     PRINT USING MASKA$;C(25)
  79.     GOSUB 5140
  80.     RETURN 
  81.  
  82. 5120    X1=686:X2=9:X3=0:X4=999999.99:GOSUB 345                REMARK    ENTER TAX AMOUNT
  83.     C(26)=FNR(X0)
  84.     X1=685:GOSUB 210
  85.     PRINT USING MASKA$;C(26)
  86.     GOSUB 5140
  87.     RETURN 
  88.  
  89.  
  90. 5140    C(24)=-1*FNR((C(23)*C(27))/100)                    REMARK    RECALCULATE AND DISPLAY DISCOUNT AMOUNT
  91.     X1=557:GOSUB 210
  92.     PRINT USING MASKA$;C(24)
  93.     GOTO 5215
  94.  
  95. 5150    X1=494:X2=9:X3=-1*C(24):X4=999999.99:GOSUB 345            REMARK    ENTER CREDIT MEMO AMOUNT
  96.     C(23)=FNR(X0)
  97.     X1=494:GOSUB 210
  98.     PRINT USING MASKA$;C(23)
  99.     GOTO 5230
  100.                                     REMARK    DISPLAY TRANSACTION MASK AND VALUES
  101. 5200    IF W1%=4 THEN 5220                        REMARK    CREDIT MEMO TRANSACTIONS AT LINE 5220
  102.     X0=2:GOSUB 260
  103.     GOSUB 5375
  104.     GOSUB 5250
  105.     IF N=1 THEN RETURN                        REMARK    DON'T DISPLAY IF NEW TRANSACTION
  106.     X1=493:GOSUB 210
  107.     PRINT USING MASKA$;C(27)
  108.     FOR A1%=24 TO 26
  109.     PRINT LEFT$(X9$,45);                        REMARK    PRINT NON-DESTRUCTIVE SPACES
  110.     PRINT USING MASKA$;C(A1%)
  111.     NEXT A1%
  112. 5215    X1=749:GOSUB 210
  113.     PRINT USING MASKA$;C(23)+C(24)+C(25)+C(26)
  114.     N1=1
  115.     RETURN 
  116.                                     REMARK    DISPLAY CREDIT MEMO TRANSACTIONS
  117. 5220    X0=13:GOSUB 260                            REMARK    GET CRT MASK #13
  118.     GOSUB 5375
  119.     GOSUB 5250
  120.     IF N=1 THEN RETURN
  121.     X1=558:GOSUB 210
  122.     PRINT USING MASKA$;C(24)
  123.     X1=622:GOSUB 210
  124.     PRINT USING MASKA$;C(25)
  125. 5230    X1=686:GOSUB 210
  126.     PRINT USING MASKA$;C(23)+C(24)
  127.     N1=1
  128.     RETURN 
  129.  
  130.  
  131. 5250    X1=266:GOSUB 210                        REMARK    DISPLAY VENDOR DATA
  132.     PRINT W1$
  133.     X1=7:GOSUB 215
  134.     PRINT M$(2)
  135.     X1=15:GOSUB 215
  136.     PRINT USING MASKB$;W0
  137.     IF N=1 THEN PRINT:RETURN                    REMARK    DON'T DISPLAY UNENTERED VALUES
  138.     X1=15:GOSUB 215
  139.     PRINT W2$
  140.     IF W1%=4 THEN X1=494 \
  141.     ELSE X1=429
  142.     GOSUB 210
  143.     PRINT USING MASKA$;C(23)
  144.     X1=527:GOSUB 210
  145.     PRINT W3$
  146.     X1=15:GOSUB 215
  147.     PRINT USING MASKB$;D(25)
  148.     X1=15:GOSUB 215
  149.     X0=D(23):GOSUB 680.5:PRINT
  150.     X1=15:GOSUB 215
  151.     X0=D(24):GOSUB 680.5:PRINT
  152.     RETURN 
  153.  
  154. 5375    X1=40:GOSUB 210                            REMARK    DISPLAY TYPE AND OPERATION DESCRIPTIONS
  155.     PRINT A3$(W2%+5);" ";A3$(W1%),""
  156.     RETURN 
  157.                                     REMARK     THIS ROUTINE CONTROLS THE SEQUENTIAL ENTRY OF \ 
  158.                                         G/L AND JOB POSTING AMOUNTS FOR INVOICE CREATION.
  159. 5400    FOR I%=G TO G1
  160.     GOSUB 5410
  161.     IF D(I%)=0 THEN RETURN    
  162.     NEXT I%
  163.     RETURN 
  164. 5410    IF I%>11 THEN 5450
  165.     X1=(I%-1)*64+326:X2=7:X3=0:X4=99999.9:GOSUB 345            REMARK    ENTER G/L NUMBER
  166.     D(I%)=X0
  167.     IF X0=0 THEN 5445
  168.     GOTO 5440                            REMARK    BYPASS THIS SECTION UNLESS G/L PROGRAMS INSTALLED
  169. 5420                                    REMARK    INSERT G/L POSTING INQUIRY ROUTINES HERE...
  170.     Y2=5
  171.     K1=X0
  172.     GOSUB 10.60
  173.     IF H <> -1 THEN RETURN
  174.     X2$="INVALID G/L ACCOUNT NO.":GOSUB 615
  175.     GOTO 5410
  176. 5440    X1=(I%-1)*64+338:X2=10:X3=-999999.99:X4=999999.99:GOSUB 345    REMARK    ENTER DISTRIBUTION AMOUNT
  177.     X0=FNR(X0)
  178. 5445    D1=D1+X0-C(I%)                            REMARK    ACCUMULATE G/L AMOUNT TO TOTAL \
  179.                                         AND DISPLAY ACCOUNT AND AMOUNT
  180.     C(I%)=X0
  181.     X1=(I%-1)*64+325:GOSUB 210
  182.     PRINT USING MASKC$;D(I%),C(I%)
  183.     RETURN 
  184.  
  185. 5450    X1=(I%-12)*64+358:X2=6:X3=0:X4=999999:GOSUB 345            REMARK    ENTER JOB NUMBER
  186.     D(I%)=X0
  187.     IF X0<>0 THEN \                            REMARK    ENTER DISTRIBUTION AMOUNT
  188.         X1=(I%-12)*64+371:X2=10:X3=-999999.99:X4=999999.99:GOSUB 345:\
  189.         X0=FNR(X0)
  190.     D2=D2+X0-C(I%)                            REMARK    ACCUMULATE JOB AMOUNT TO TOTAL
  191.     C(I%)=X0
  192.     X1=(I%-12)*64+350:GOSUB 210
  193.     PRINT USING MASKD$;I%,D(I%),C(I%)                REMARK    DISPLAY ACCOUNT AND AMOUNT
  194.     RETURN
  195.  
  196. 5460    IF W1%=4 THEN D0=C(23)\                        REMARK    CALCULATE TOTAL
  197.     ELSE D0=C(23)+C(24)+C(25)+C(26)
  198.     IF FND(D1)<>D2 THEN 5465                    REMARK    CHECK G/L AND JOB TOTALS AND DISTRIBUTION
  199.     IF D1+D2<>FNR(D0) + FND(D0) THEN 5465
  200.     PRINT CURSOR.HOME$;
  201.     PRINT:PRINT:PRINT
  202.     PRINT TAB(64);
  203.     IF N1<=1 THEN RETURN
  204.     N1=0
  205.     GOTO 5460
  206.  
  207. 5465    IF N1=1 THEN \                            REMARK    ROUTINE TO CORRECT OUT-OF-BALANCE DISTRIBUTION
  208.         N1=2:\
  209.         GOSUB 5520:\
  210.         F=0
  211. 5470    IF D1<>D0 THEN 5480
  212.     X0=39:X0$="JOB":X2=D0-D2:GOSUB 5490                REMARK    USE SUBROUTINES TO CORRECT JOB TOTALS
  213.     IF D2 <> FND(D0) THEN 5470
  214.     PRINT CURSOR.HOME$;
  215.     PRINT:PRINT:PRINT
  216.     PRINT TAB(64)
  217.     GOTO 5460
  218. 5480    X0=6:X0$="G/L":X2=D0-D1:GOSUB 5490                REMARK    USE SUBROUTINES TO CORRECT G/L TOTALS
  219.     IF D1<>D0 THEN 5480
  220.     GOTO 5460
  221. 5490    IF X2=0 THEN RETURN                        REMARK    THIS SUBROUTINE DISPLAYS \
  222.                                         G/L OR JOB POSTING DISCREPANCY AMOUNTS
  223.     X1=192:GOSUB 210
  224.     PRINT TAB(X0);X0$;" DIST OFF";
  225.     PRINT USING MASKA$;X2;TAB(64)
  226.     N1=2
  227.     GOSUB 5950
  228.     RETURN 
  229.  
  230. 5520    IF N1+F=5 THEN RETURN                        REMARK    REDISPLAY G/L AND JOB DISTRIBUTION MASK AND TOTALS
  231.     X0=3:GOSUB 260
  232.     GOSUB 5375
  233.     X1=320:GOSUB 210
  234.     FOR I%=1  TO 11
  235.     X1=6:GOSUB 215
  236.     IF D(I%)=0 THEN X1=26:GOSUB 215\
  237.     ELSE\
  238.     PRINT USING MASKC$;D(I%),C(I%);
  239.     IF D(I%+11)>0 THEN PRINT USING MASKD$; I%+11,D(I%+11),C(I%+11)\
  240.     ELSE PRINT
  241.     NEXT I%
  242.     IF F=3 THEN 5950
  243.     RETURN 
  244.  
  245. 5550    X0=W2%
  246.     X0%=L
  247.     FILE.NO=2:GOSUB 3000                        REMARK    GET INVOICE RECORD FROM A/P0F120
  248.     D1=C(1)+C(2)+C(3)+C(4)+C(5)+C(6)+C(7)+C(8)+C(9)+C(10)+C(11)
  249.     D2=C(12)+C(13)+C(14)+C(15)+C(16)+C(17)+C(18)+C(19)+C(20)+C(21)+C(22)
  250.     W2%=X0
  251.     IF W1%=4 THEN F1=6 \
  252.     ELSE  F1=9
  253.     RETURN
  254.     
  255. 5600    TRANSACTION.RCD.COUNT%=TRANSACTION.RCD.COUNT%+1            REMARK    SAVE TRANSACTION ON TRANSACTION FILE
  256.     FILE.NO=3
  257.     X0%=TRANSACTION.RCD.COUNT%
  258.     GOSUB 3050                            REMARK    WRITE TRANSACTION RCD TO A/P0F020
  259.     
  260.                                     REMARK    THIS FILE MUST BE CLOSED AND RE-OPENED IN \
  261.                                         ORDER TO APPEND TO IT AND MAINTAIN \ 
  262.                                         PROPER FILE INFORMATION ON THE FCB.
  263.  
  264.     CLOSE 3,4
  265.     OPEN "A/P0F020.DAT" RECL 580 AS 3, "A/P0F130.DAT" AS 4
  266.     X2$="RECORDED":GOSUB 615
  267.     SORT%=0
  268.     X0=4: GOSUB 3350
  269.     IF TRANSACTION.RCD.COUNT% < MAX.TRANSACTION.RCDS% THEN RETURN\
  270.     ELSE\                                REMARK    ABEND THE PROGRAM, CLOSE THE FILE, CHAIN THE MENU
  271.         PRINT CLEAR.SCREEN$;"TRANSACTION FILE FULL - RUN A/P UPDATE":\
  272.         PRINT "KEY <RETURN> TO EXIT":INPUT ""; LINE X0$:\
  273.         GOTO 6400
  274. 5700    X2$="TRANSACTION CANCELLED"                    REMARK    IGNORE LAST ENTERED TRANSACTION
  275.     GOSUB 615
  276.     RETURN 
  277.  
  278. 5800    GOSUB 5200                            REMARK    REDISPLAY TRANSACTION MASK AND VALUES.  ALLOW CHANGES
  279.     GOSUB 5900
  280.     RETURN 
  281.  
  282. 5900    X2=1:X3=0:X4=F1:X2$="ENTER FIELD TO CHANGE(0=NONE)":GOSUB 665    REMARK    ALLOW CHANGES TO FIELDS ON THE INVOICE SCREEN
  283.     F=X0
  284.     IF F=0 THEN RETURN
  285.     GOSUB 5010
  286.     GOTO 5900
  287. 5950    X2=2:X3=0:X4=22:X2$="ENTER FIELD TO CHANGE(0=NONE)":GOSUB 665    REMARK    ALLOW CHANGES TO G/L AND JOB DISTRIBUTION FIELDS
  288.     IF X0=0 THEN RETURN
  289.     I%=X0
  290.     GOSUB 5410
  291.     IF N1=2 THEN RETURN
  292.     GOTO 5950
  293.  
  294.  
  295.  
  296.                                     REMARK    START OF MAIN PROGRAM
  297. 6000    OPEN "A/P0F110.DAT" RECL 162 AS 1                REMARK    OPEN VENDOR FILE
  298.     OPEN "A/P0F120.DAT" RECL 580 AS 2                REMARK    OPEN INVOICE FILE
  299.     OPEN "A/P0F020.DAT" RECL 580 AS 3                REMARK    OPEN TRANSACTION FILE
  300.     OPEN "A/P0F130.DAT" AS 4                    REMARK    OPEN A/P INFORMATION FILE
  301.     OPEN "CRT" RECL 1100 AS 19
  302.     X0=4
  303.     GOSUB 3310                            REMARK    GET A/P GENERAL INFORMATION
  304.     MAX.TRANSACTION.RCDS%=200                    REMARK    SET MAXIMUM FILE LENGTH    FOR TRANSACTION FILE
  305.     GOTO 6100                            REMARK    SKIP OPENING G/L FILE FOR NOW
  306.     OPEN "G/L0F110.DAT" RECL 157 AS 5
  307.     OPEN "G/L0F130.DAT" AS 6
  308.     FILE.NO%=6:GOSUB .314                        REMARK    RETRIEVE G/L EXTENT INFORMATION
  309. 6100    GOSUB 5000                            REMARK    DISPLAY PROGRAM TITLE
  310.     X2=1:X3=0:X4=5:X2$="OPERATION 0=EXIT; 1=NEW INV; 2=DEL; 3=MOD;"    REMARK    REQUEST OPERATION CODE AND BRANCH TO APPROPRIATE AREA
  311.     X2$=X2$+" 4=CREDIT; 5=DEBIT"
  312.     GOSUB 665
  313.     W1%=X0
  314.     W2%=W1%
  315.     IF X0=0 THEN 6400
  316.     IF X0=2 OR X0=3 THEN GOTO 6120
  317.     W2%=1
  318.     IF W1%=4 THEN F1=6 \
  319.     ELSE  F1=9
  320. 6120    F=0
  321. 6160    GOSUB 5000                            REMARK    DISPLAY PROGRAM TITLE
  322.     GOSUB 5375                            REMARK    DISPLAY TYPE & OPERATION DESCRIPTIONS
  323.     IF F>0 THEN 6220
  324.     X1=256:GOSUB 210
  325.     PRINT "VENDOR"
  326.     X1=266:X2=6:X3=0:X4=0:GOSUB 345                    REMARK    REQUEST VENDOR NO.
  327.     IF X0$ <=" " THEN 6100
  328.     IF W1$=X0$ THEN 6220
  329.     W1$=X0$
  330.     RECORD.COUNT=AP.VENDFILE.EXTENT
  331.     Y2=1
  332.     XYZ$=W1$+"      "
  333.     K$=LEFT$(XYZ$,6):GOSUB 1060                    REMARK    SEARCH FOR VENDOR RCD
  334.     IF H=-1 OR VAR1=0 THEN \
  335.         X2$="NOT ON FILE":\
  336.         GOSUB 615:\
  337.         W1$=" ":\
  338.         GOTO 6160
  339.     X0=L:Y9=1:GOSUB 3200                        REMARK    GET VENDOR RECORD
  340. 6220    X1=256:GOSUB 210                        REMARK    DISPLAY VENDOR DATA
  341.     PRINT "VENDOR    ";W1$
  342.     X1=384:GOSUB 210
  343.     FOR K%=2  TO 5
  344.     X1=21:GOSUB 215
  345.     PRINT M$(K%)
  346.     NEXT K%
  347.     FOR I%=1 TO 27                            REMARK    ZERO TRANSACTION RECORD VARIABLES
  348.     D(I%)=0
  349.     C(I%)=0
  350.     NEXT I%
  351.     D1=0
  352.     D2=0
  353.     N=0
  354.     W$=""
  355. 6240    GOSUB 5375
  356.     X1=320:GOSUB 210
  357.     PRINT "INVOICE # "
  358.     X1=330:X2=6:X3=0:X4=999999:GOSUB 345                REMARK    REQUEST INVOICE NUMBER
  359.     IF X0=0 THEN 6120
  360.     W0=X0
  361.     XYZ$=W1$+"      "                        REMARK    LET'S GET THE INVOICE # CHECKED.
  362.     ZYX$="000000"+X0$
  363.     K$=LEFT$(XYZ$,6)+RIGHT$(ZYX$,6)
  364.     Y2=2
  365.     RECORD.COUNT=AP.INVOICE.EXTENT
  366.     GOSUB 1060
  367.     IF H <>-1 THEN 6260
  368.     IF W2%=1 THEN 6300                        REMARK    INVOICE NOT ON FILE - OKAY IF NEW INVOICE TRANSACTION
  369.     X2$="NOT ON FILE":GOSUB 615
  370.     GOTO 6240
  371. 6260    X0=L
  372.     IF W2%=2 THEN GOTO 6330                        REMARK    BRANCH TO DELETE ROUTINE
  373.     IF W2%=3 THEN GOTO 6310                        REMARK    BRANCH TO MODIFY ROUTINE
  374.     X2$="ALREADY ON FILE":GOSUB 615                        REMARK    NEW INVOICE MUST NOT BE ON FILE
  375.     GOTO 6240
  376. 6300    N=1                                REMARK    NEW INVOICE OR DEBIT MEMO ENTRY
  377.     GOSUB 5200                            REMARK    DISPLAY MASK AND VALUES
  378.     FOR F=1 TO F1
  379.     GOSUB 5010                            REMARK    ENTER FIELD VALUES
  380.     NEXT F
  381.     GOSUB 5900                            REMARK    ALLOW CHANGES TO ENTRIES
  382.     GOTO 6350
  383.                                     REMARK    MODIFY EXISTING INVOICE RECORD
  384. 6310    GOSUB 5550                            REMARK    RETRIEVE INVOICE
  385.     GOSUB 5200                            REMARK    DISPLAY INVOICE FIELD VALUES
  386.     GOSUB 5900                            REMARK    ALLOW CHANGES
  387.     GOTO 6380
  388.                                     REMARK    DELETE EXISTING INVOICE RECORD
  389. 6330    GOSUB 5550                            REMARK    RETRIEVE INVOICE
  390.     GOSUB 5200                            REMARK    DISPLAY INVOICE FIELD VALUES
  391.     X2=3:X3=0:X4=0:X2$="ENTER DELETE CODE":GOSUB 665
  392.     IF X0$="DEL" THEN GOSUB 5600
  393.     GOSUB 5000
  394.     GOTO 6220
  395.  
  396. 6350    X0=3:GOSUB 260                            REMARK    G/L AND JOB DISTRIBUTION ENTRY
  397.     GOSUB 5375
  398.     G=1:G1=11:GOSUB 5400                        REMARK    ENTER G/L DISTRIBUTION
  399.     G=12:G1=22:GOSUB 5400                        REMARK    ENTER JOB DISTRIBUTION
  400.     GOSUB 5950                            REMARK    ALLOW CHANGES
  401.     N1=0
  402. 6380    GOSUB 5460                            REMARK    CALCULATE INVOICE TOTAL
  403.     X0=4:GOSUB 260                            REMARK    DISPLAY ACTION MASK
  404.     GOSUB 5375                            REMARK    DISPLAY TYPE AND OPERATION
  405.     X1=140:X2=1:X3=1:X4=4:GOSUB 345                    REMARK    ENTER ACTION CODE        
  406.     F=X0
  407.     N=F
  408.     IF F=1 THEN GOSUB 5600:GOTO 6160                REMARK    WRITE THE TRANSACTION RCD
  409.  
  410.     IF F=2 THEN GOSUB 5800:GOTO 6380                REMARK    DISPLAY TRANSACTION DATA AND \
  411.                                         GO BACK TO ACTION CODE MASK
  412.  
  413.     IF F=3 THEN GOSUB 5520:N1=1:GOTO 6380                REMARK    DISPLAY G/L DATA AND GO BACK TO ACTION CODE MASK
  414.  
  415.     IF F=4 THEN GOSUB 5700:GOTO 6160                REMARK    CANCEL TRANSACTION AND GO BACK TO VENDOR NUMBER ENTRY
  416.  
  417.     GOTO 6380                            REMARK    DEFAULT FALL-THROUGH
  418. 6400    PRINT CLEAR.SCREEN$;"A/P TRANSACTION ENTRY LOADING MENU"    REMARK    EXIT PROGRAM ROUTINE
  419.     CHAIN "A/P000"
  420.