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