home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / bus / tc-25.ba < prev    next >
Text File  |  2006-10-19  |  5KB  |  94 lines

  1. 0 'TC-25.BA  TIME CARD  v2.5 Drew Blanchar: Summer 1987
  2. 1 'CLUB 100 Library - 415/939-1246 BBS,    937-5039 NEWSLETTER, 932-8856 VOICE
  3. 5 CLS:CLEAR300:MAXFILES=1:DEFSTRD,F,I,N,T:D=DATE$:F="TC"+LEFT$(D,2)+MID$(D,4,2)
  4. 10 'D=DATE$, F=FILE NAME, I=LINE INPUT      J=JOB #, K=VAL(INKEY$) N=JOB NAME,      T=TIME$, U=HR.MIN, G & GG=TEMP DATES
  5. 12 'ST,ET,H=START,END,DIFF.TIME             SM,EM,M=START,END,DIFF.MILEAGE,
  6. 15 ONERRORGOTO200
  7. 20 PRINT@48,"TIMECARD FOR ";D:J=0:L=0:PRINT@128,"FOR INSTRUCTIONS PRESS <1>"
  8. 22 PRINT@204,"<< to continue press space bar >>"
  9. 25 A$=INKEY$:IFA$=""GOTO25ELSEIFA$="1"GOTO30ELSEGOTO50
  10. 30 CLS:PRINT"  This timecard records job number,":PRINT"job name or code, start and end times"
  11. 32 PRINT"as well as start and end mileage.":PRINT"  Total work time and mileage are"
  12. 34 PRINT"computed.  In cases when the job starts" :PRINT"or ends before 6 AM yesterday's last"
  13. 36 PRINT"entry may be checked."
  14. 40 PRINT"   << press any key to continue >>";
  15. 45 IFINKEY$=""GOTO45
  16. 50 OPENFFORINPUTAS#1
  17. 52 L=L+1:LINEINPUT#1,I
  18. 54 IFL=1THENJ=VAL(MID$(I,8,2)):N=MID$(I,11,15):GOTO52
  19. 56 IFL=2THENST=VAL(MID$(I,8,5)):SM=VAL(MID$(I,17,8)):GOTO52
  20. 58 IFL=3THENET=VAL(MID$(I,8,5)):EM=VAL(MID$(I,17,8)):GOTO52
  21. 60 IFL=4THENH=VAL(MID$(I,8,5)):M=VAL(MID$(I,18,7)):GOTO52
  22. 62 IFL=5THENK$=I:GOTO52
  23. 64 IFLEN(I)<2THENL=0:GOTO52
  24. 66 GOTO52
  25. 100 'SHOW LAST ENTRY
  26. 110 CLS:PRINT@12,"LAST JOB IN FILE"
  27. 120 PRINT"";F;:PRINTUSING" ##";J;:PRINTUSING" \             \";N
  28. 122 PRINT"START  ";:PRINTUSING"##.##";ST;:PRINTUSING"    ######.#";SM
  29. 124 PRINT"END    ";:PRINTUSING"##.##";ET;:PRINTUSING"    ######.#";EM
  30. 126 PRINT"CHARGE ";:PRINTUSING"##.##";H;:PRINTUSING" hr  #####.#";M;:PRINT"miles"
  31. 128 PRINTK$
  32. 130 PRINT@283,"<< press any key to continue >>";:IFINKEY$=""THEN130ELSECLS:GOTO250
  33. 150 CLS:PRINT@11,"UNFINISHED LAST JOB":PRINT" JOB";J;N:PRINT" START TIME ";:PRINTUSING"##.##";ST
  34. 152 PRINT@162,"<ENTER> or enter new":T=TIME$:U=VAL(LEFT$(T,2))+VAL(MID$(T,4,2))/100
  35. 154 K$="":PRINT@123,"END TIME ";:PRINTUSING"##.##";U;:PRINT" (HH.MM)  ";:LINEINPUTK$
  36. 156 IFK$=""THENET=UELSEET=VAL(K$)
  37. 158 M1=((ET-FIX(ET))-(ST-FIX(ST)))*100
  38. 160 IFM1<0THENM1=M1+60:ET=ET-1
  39. 162 H1=FIX(ET)-FIX(ST)
  40. 164 IFH1<0THENH1=H1+24
  41. 166 H=H1+(M1/60):PRINT"WORKED HRS.MIN /(HRS)";
  42. 168 PRINTUSING" ##.##";H1+M1/100;:PRINTUSING"  /(##.##)";H
  43. 170 PRINTSPACE$(30):PRINT"START MILEAGE  ";SM
  44. 172 INPUT"  END MILEAGE ";EM
  45. 174 M=EM-SM:IFM<0THENM=M+100000
  46. 176 PRINT"      MILES TRAVELED";M
  47. 178 PRINT"          <ENTER> if correct or                   <-> to change END MILEAGE";
  48. 180 K$=INKEY$:IFK$=""THEN180
  49. 182 IFK$="-"THENCLS:GOTO170
  50. 185 PRINT:PRINT"<< type up to 2 lines of notes          NO <ENTER> until end >>"
  51. 187 PRINT"note: ";:LINEINPUTK$
  52. 190 CLS:PRINT@162,"STORING ABOVE DATA IN FILE ";F
  53. 192 OPENFFORAPPENDAS1:PRINT#1,"END    ";:PRINT#1,USING"##.##";ET;:PRINT#1,USING"    ######.#";EM
  54. 194 PRINT#1,"CHARGE ";:PRINT#1,USING"##.##";H;:PRINT#1,USING" hr  #####.#";M;:PRINT#1,"miles"
  55. 196 PRINT#1,"note:";K$:PRINT#1,"":CLOSE#1:FORX=1TO300:NEXTX:BEEP:CLS:GOTO250
  56. 200 'ON-ERROR BRANCHING
  57. 202 CLOSE:Z=ERR:ZZ=ERL:RESUME204
  58. 204 IFZ=52OR(Z=54ANDJ=0)THEN240
  59. 206 IFZ=54ANDL=1THEN100
  60. 208 IFZ=54ANDL<4GOTO150
  61. 210 PRINT"ERR";Z;"LINE";ZZ;
  62. 212 IFINKEY$=""GOTO212
  63. 240 CLS:PRINT"NO JOBS YET LISTED FOR TODAY":K=0:IFVAL(TIME$)>5ORG=1GOTO250
  64. 245 PRINT@242,"CLOSE JOB FROM YESTERDAY   <4>";
  65. 250 K=0:PRINT@80,"choose one              <press>":
  66. 252 PRINT"      EXIT                 <1>"
  67. 254 PRINT"      CHECK SCHEDULE       <2>"
  68. 256 PRINT"      CREATE JOB ENTRY     <3>";
  69. 260 K=VAL(INKEY$):IFK=1ORK=2ORK=3ORK=4THEN265ELSE260
  70. 265 ONKGOTO380,375,300,400
  71. 300 'CREATE JOB ENTRIES
  72. 305 IFG=1THENJ=1ELSEJ=J+1
  73. 310 CLS:PRINT"JOB TITLE OR CODE:";J;:LINEINPUT"-";N
  74. 315 INPUT" START MILEAGE";SM
  75. 320 PRINT@122,"<ENTER> or enter new";
  76. 325 K$="":T=TIME$:U=VAL(LEFT$(T,2))+(VAL(MID$(T,4,2))/100):PRINT@80,"START TIME ";
  77. 327 PRINTUSING"##.##";U;:PRINT" (HH.MM)  ";:LINEINPUTK$
  78. 330 IFK$=""THENST=UELSEST=VAL(K$)
  79. 335 CLS:PRINT@162,"STORING ABOVE DATA IN FILE ";F
  80. 340 F="TC"+LEFT$(D,2)+MID$(D,4,2)
  81. 342 OPENFFORAPPENDAS1:PRINT#1,"";F;:PRINT#1,USING" ##";J;:PRINT#1,USING" \             \";N
  82. 344 PRINT#1,"START  ";:PRINT#1,USING"##.##";ST;
  83. 346 PRINT#1,USING"    ######.#";SM:CLOSE#1:FORX=1TO200:NEXTX:BEEP
  84. 350 CLS:K=0:PRINT"choose one            <press>
  85. 352 PRINT"      EXIT               <1>"
  86. 354 PRINT"      CHECK SCHEDULE     <2>"
  87. 360 K=VAL(INKEY$):IFK=1ORK=2THEN365ELSE360
  88. 365 ONKGOTO380,375
  89. 375 CLOSE:CLS:CALL23407
  90. 380 CLOSE:CLS:MENU
  91. 400 G=VAL(MID$(D,4,2)):G=G-1:GG=(G/10):IFGG>=1THENG=G-GG*10ELSEGG=0
  92. 405 F="TC"+LEFT$(D,2)+CHR$(GG+48)+CHR$(G+48):G=1
  93. 410 GOTO50
  94.