home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpmug / cpmug044.ark / G_L070.BAS < prev    next >
BASIC Source File  |  1985-02-10  |  5KB  |  131 lines

  1.  
  2.     REMARK  ***************************************************\
  3.         *  GL070.BAS         GENERAL INFORMATION F/M      *\
  4.         *       8/8/79                      1:50  PM      *\
  5.         ***************************************************
  6.  
  7.  
  8.     DEF FNR(Z1)=INT(Z1*100+.5)/100
  9.     DIM G2$(5),G3(5)
  10.  
  11. %INCLUDE CURSOR
  12.     GOTO 6000
  13. %INCLUDE SUBS1
  14. %INCLUDE GENINFO
  15.                                     REMARK  LINE PRINTER ROUTINE -- REPORT HEADINGS
  16. 825    A1=85                                REMARK  SET CARRIAGE WIDTH
  17.     IF LINE.COUNT% < 55 THEN RETURN                    REMARK  IF  NOT END OF PAGE, RETURN TO MAINLINE
  18.     PAGE.COUNT%=PAGE.COUNT%+1
  19.     PRINT CHR$(12);
  20.     PRINT TAB((A1-LEN(G2$(1)))/2);G2$(1);TAB(A1);"DATE ";
  21.     X0=G3(1):GOSUB 680.5                        REMARK  PRINT REPORT DATE  
  22.     PRINT
  23.     PRINT TAB((A1-LEN(X4$))/2);X4$;TAB(A1);"PAGE ";PAGE.COUNT%    REMARK  PRINT PAGE NUMBER
  24.     PRINT
  25.     PRINT
  26.     PRINT
  27.     LINE.COUNT% = 6                            REMARK  RESET LINE COUNTER AFTER SKIPPING TO NEW PAGE
  28.     RETURN
  29.  
  30.                                     REMARK  DISPLAY GENERAL INFORMATION FILE CONTENTS ON CRT
  31. 5300    X0=5: GOSUB 260                            REMARK  DISPLAY ENTRY MASK ON CRT
  32. 5310    X1=274:GOSUB 210:PRINT G1;"         "                REMARK  DISPLAY COMPANY NUMBER
  33.     X1=339: GOSUB 210
  34.     PRINT USING MASK6$;G2                        REMARK  DISPLAY NEXT CHECK NUMBER
  35.     X1=19: GOSUB 215
  36.     PRINT G3.0;TAB(26)                        REMARK  DISPLAY OVERTIME RATE MULTIPLIER
  37.     X1=19: GOSUB 215
  38.     PRINT G4;TAB(26)                        REMARK  REMARK DISPLAY HOURLY RATE
  39.     X1=19: GOSUB 215
  40.     PRINT G5;TAB(26)                        REMARK    DISPLAY FISCAL YEAR END 
  41.     FOR I%=1 TO 5
  42.     X1=20: GOSUB 215
  43.     PRINT G2$(I%);TAB(63)                        REMARK  DISPLAY COMPANY NAME/ADDRESS
  44.     NEXT I%
  45.     X1=308:X0=G3(1): GOSUB 680                    REMARK  DISPLAY CURRENT DATE
  46.     PRINT 
  47.     X1=53: GOSUB 215
  48.     X0=G3(2): GOSUB 680.5                        REMARK  DISPLAY PERIOD START DATE
  49.     PRINT
  50.     X1=53: GOSUB 215
  51.     X0=G3(3): GOSUB 680.5                        REMARK  DISPLAY PERIOD END DATE
  52.     PRINT 
  53.     X1=53: GOSUB 215
  54.     PRINT G3(4)                            REMARK    DISPLAY PAYROLL NUMBER
  55.     X1=53:GOSUB 215
  56.     PRINT G3(5)                            REMARK  DISPLAY DAY NUMBER
  57.     RETURN 
  58.  
  59. 6000    A$="COMPANY CODE ##    NEXT CHECK NO. ######    O.T. RATE ##.##    "
  60.     A$=A$+"HOURLY RATE ##.##    FISCAL YR ENDS ##"
  61.     B$="COMPANY NAME /#######################/      FED-STATE TAX NUMBERS"
  62.     B$=B$+"      /########################/"
  63.     C$="ADDRESS      /#####################/        /#######################"
  64.     C$=C$+"/  /########################/"
  65.     MASK6$="######"
  66.                                     REMARK  SET ALL PRINT MASKS UP AT START OF THE PROGRAM
  67.     OPEN "G/I0F010.DAT" AS 1,"CRT" RECL 1100 AS 19
  68.     FILE.NO%=1:GOSUB 700                        REMARK  READ GENERAL INFORMATION FILE
  69.     GOSUB 5300                            REMARK  DISPLAY FILE CONTENTS ON SCREEN
  70. 6005    X1=128:X2=2:X3=-1:X4=15: GOSUB 345
  71.     C%=X0
  72.     IF C% = -1 THEN \                        REMARK  IF NEGATIVE OPERATION CODE, EXIT PROGRAM.
  73.         PRINT CLEAR.SCREEN$;"G/I F/M LOADING MENU":\
  74.         CHAIN "G/L000"                        REMARK  LOAD MENU AT THIS POINT
  75.     ON C%+1 GOSUB 6100,6010,6020,6030,6040,6045,6050,6050,6050,6050,6050,\
  76.     6060,6060,6060,6070,6080
  77.     CLOSE 1
  78.     OPEN "G/I0F010.DAT" AS 1
  79.     GOSUB 720                            REMARK  RE-WRITE GENERAL INFORMATION FILE
  80.     GOSUB 5310                            REMARK  RE-DISPLAY SCREEN
  81.     GOTO 6005
  82.  
  83.  
  84. 6010    X1=275:X2=2:X3=1:X4=10:GOSUB 345                REMARK  ENTER COMPANY NUMBER
  85.     G1=X0
  86.     RETURN
  87. 6020    X1=339:X2=6:X3=1:X4=999999:GOSUB 345
  88.     G2=X0                                REMARK  ENTER NEXT CHECK NUMBER
  89.     RETURN 
  90. 6030    X1=403:X2=5:X3=0:X4=99.99:GOSUB 345
  91.     G3.0=FNR(X0)                            REMARK  ENTER OVERTIME RATE MULTIPLIER
  92.     RETURN 
  93. 6040    X1=467:X2=5:X3=0:X4=99.99:GOSUB 345                REMARK  ENTER HOURLY RATE
  94.     G4=FNR(X0)
  95.     RETURN 
  96. 6045    X1=531:X2=2:X3=1:X4=12:GOSUB 345                REMARK    ENTER FISCAL YEAR END
  97.     G5=X0
  98.     RETURN
  99. 6050    X1=595+64*(C%-6):X2=24:X3=0:X4=0:GOSUB 345            REMARK  ENTER COMPANY NAME AND ADDRESS
  100.     G2$(C%-5)=X0$
  101.     RETURN 
  102. 6060    X1=308+64*(C%-11):GOSUB 673                    REMARK  ENTER DATES FOR FIELDS 10,11 AND 12
  103.     G3(C%-10)=X0
  104.     RETURN 
  105. 6070    X1=500:X2=2:X3=1:X4=3:GOSUB 345                    REMARK  ENTER PAYROLL NUMBER
  106.     G3(4)=X0
  107.     RETURN 
  108. 6080    X1=564:X2=2:X3=1:X4=14:GOSUB 345                REMARK  ENTER DAY NUMBER IN PAYROLL PERIOD
  109.     G3(5)=X0
  110.     RETURN 
  111. 6100    LPRINTER                            REMARK    PRINT GENERAL INFORMATION ON PRINTER
  112.     LINE.COUNT%=60
  113.     X4$="GENERAL INFORMATION FILE MAINTENANCE":GOSUB 825        REMARK  PRINT HEADINGS FOR REPORT
  114.     PRINT "PERIOD START";TAB(19);
  115.     X0=G3(2):GOSUB 680.5                        REMARK  PRINT PERIOD START DATE
  116.     PRINT 
  117.     PRINT "PERIOD END";TAB(19);
  118.     X0=G3(2):GOSUB 680.5                        REMARK  PRINT PERIOD END DATE
  119.     PRINT 
  120.     PRINT "PAYROLL NUMBER";TAB(18);G3(4)
  121.     PRINT "DAY NUMBER";TAB(18);G3(5)
  122.     PRINT :PRINT
  123.     PRINT USING A$;G1,G2,G3.0,G4,G5
  124.     PRINT USING B$;G2$(1),G2$(5)                    REMARK  PRINT OTHER G/I FILE FIELDS
  125.     PRINT USING C$;G2$(2),G2$(3),G2$(4)
  126.     CONSOLE
  127.     RETURN 
  128.  COMPANY NAME AND ADDRESS
  129.     G2$(C%-5)=X0$
  130.     RETURN 
  131. 6060    X1=308+64*(C%-11):GOSUB 673                    REMARK  ENTER DATES FOR FIELDS 10,11 A