1 REM Ins{nt av 417 1 REM Ins{nt av 417 10 REM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 11 REM < KEYWORD ACESS SYSTEM < 12 REM < 'SELECT/LIST' SUBSYSTEM < 13 REM < ----------- < 14 REM < K$=KEYWORDS,A$=ARTICLE < 15 REM < NAME,M$=MAGAZINE,D$=DATE, < 16 REM < P%=PAGE,W$()=AUTHORS,Z$= < 17 REM < DATA FILE,L$=KEYWORD MATCH < 18 REM < LIST,Y$=AUTHOR MATCH,N$= < 19 REM < MAGAZINE NAME MATCH < 20 REM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 21 ; CHR$(12%); : ; "====== S\KA ARTIKLAR EFTER S\KORD ======" 22 DIM K$(10%)=20%,W$(2%)=25% 23 REM **MENU 24 FOR I%=1% TO 21% : ; CUR(I%,0%);"=" : ; CUR(I%,39%);"=" : NEXT I% 25 FOR J%=0% TO 39% : ; CUR(2%,J%)"=" : ; CUR(21%,J%);"=" : NEXT J% 26 ; CUR(1%,3%)"(TRYCK F\R 'ICKE-S\KORD')" 27 IF C% GOTO 30 28 ; CUR(3%,2%);"AKTUELL" : ; CUR(4%,3%)"FIL (EXT) >" 29 ; CUR(5%,2%)"PRINTER J/N >" 30 ; CUR(6%,2%)"TIDSKRIFT >" 31 ; CUR(7%,2%)"F\RFATTARE >" 32 ; CUR(8%,15%)"- S\KORD -" 33 FOR I%=10% TO 14% : ; CUR(I%,2%)">" : ; CUR(I%,20%)">" : NEXT I% 34 ; CUR(16%,2%)"MATCHA N]GOT" : ; CUR(17%,3%)"S\KORD/ALLA" 35 ; CUR(18%,3%)"S\KORD N/A >" : IF C% GOTO 38 36 REM **OPEN FILE AND PRINTER 37 ; CUR(4%,16%)""; : INPUTLINE Z$ : Z$=LEFT$(Z$,LEN(Z$)-2%) 38 ONERRORGOTO 99 : OPEN "DR1:"+Z$ ASFILE 1% : IF C% GOTO 41 39 ; CUR(5%,16%)""; : INPUTLINE P$ : P$=LEFT$(P$,1%) : IF P$="J" OR P$="j" THEN P1%=2% 40 OPEN "PR:" ASFILE P1% 41 REM **INPUT 42 B1%=0% 43 ; CUR(6%,16%)""; : INPUTLINE N$ : N$=LEFT$(N$,LEN(N$)-2%) 44 ; CUR(7%,16%)""; : INPUTLINE Y$ : Y$=LEFT$(Y$,LEN(Y$)-2%) 45 FOR I%=10% TO 14% : L%=I%-9% : ; CUR(I%,4%)""; : INPUTLINE L$(L%) 46 L$(L%)=LEFT$(L$(L%),LEN(L$(L%))-2%) : IF L$(L%)="" GOTO 51 47 NEXT I% 48 FOR I%=10% TO 14% : L%=I%-4% : ; CUR(I%,22%)""; : INPUTLINE L$(L%) 49 L$(L%)=LEFT$(L$(L%),LEN(L$(L%))-2%) : IF L$(L%)="" GOTO 51 50 NEXT I% 51 B2%=L%-1% : IF B2%=0% 54 52 B1%=1% : IF B2%=1% 54 53 ; CUR(18%,15%)""; : INPUTLINE B$ : IF LEFT$(B$,1%)="A" B1%=B2% 54 REM **READ FILE 55 ONERRORGOTO 83 56 FOR N%=1% TO 10% : INPUT #1%,K$(N%) : NEXT N% 57 INPUTLINE #1%,A$ : A$=LEFT$(A$,LEN(A$)-2%) 58 INPUTLINE #1%,M$ : M$=LEFT$(M$,LEN(M$)-2%) 59 INPUTLINE #1%,D$ : D$=LEFT$(D$,LEN(D$)-2%) 60 INPUT #1%,P% 61 FOR N%=1% TO 2% : INPUTLINE #1%,W$(N%) : W$(N%)=LEFT$(W$(N%),LEN(W$(N%))-2%) : NEXT N% 62 REM *DO WE HAVE A MATCH? 63 IF N$="" GOTO 66 64 IF N$=M$ GOTO 66 65 GOTO 54 66 IF Y$="" GOTO 70 67 IF W$(1%)=Y$ GOTO 70 68 IF W$(2%)=Y$ GOTO 70 69 GOTO 54 70 REM **KEYWORD MATCH 71 C1%=0% 72 IF B1%=0% 79 73 FOR I%=1% TO B2% : FOR J%=1% TO 10% : IF L$(I%)=K$(J%) 75 : NEXT J% 74 GOTO 76 75 C1%=C1%+1% 76 IF C1%>=B1% 79 77 NEXT I% 78 GOTO 54 79 REM **IT MATCHED - PRINT IT! 80 IF P1% GOTO 86 81 ; CUR(22%,0%)A$ : ; TAB(5%)"AV "W$(1%); : IF W$(2%)<>"" ; " & ";W$(2%); 82 ; : ; M$,D$ : ; "SIDA ";P% : ; : ; : GET ]$ : GOTO 54 83 IF P1% GOTO 95 84 ; : ; "*KLAR! NY S\KNING J/N>"; : CLOSE 1% : CLOSE 2% : GOTO 98 85 REM *PRINTER LIST 86 IF C%=2 GOTO 93 87 ; #P1%"*S\KNING AV ARTIKLAR" : ; #P1% : ; #P1% 88 IF N$="" GOTO 89 ELSE ; #P1%"TIDSKRIFTENS NAMN: ";N$ 89 IF Y$="" GOTO 90 ELSE ; #P1%"F\RFATTARE: ";Y$ 90 ; #P1%" S\KORD; "; : IF LEFT$(B$,1%)="A" ; #P1%TAB(20%)"(MATCHAR SAMTLIGA S\KORD)" : GOTO 92 ELSE GOTO 91 91 ; #P1%TAB(20%)"(MATCHAR MINST ETT S\KORD)" 92 FOR I%=1% TO B2% : ; #P1%L$(I%) : NEXT I% : ; #P1% 93 ; #P1%A$ : ; #P1%TAB(5%)"AV "W$(1%); : IF W$(2%)<>"" ; #P1%" & ";W$(2%); 94 ; #P1% : ; #P1%M$,D$ : ; #P1%"SIDA ";P% : ; #P1% : C%=2% : GOTO 54 95 REM *CLEAN UP 96 ; #P1%"*KLAR" 97 ; CUR(19%,2%)"*KLAR! NY" : ; CUR(20%,3%)"S\KNING J/N>" : CLOSE 1% : CLOSE 2% : ; CUR(20%,15%)""; 98 INPUTLINE B$ : B$=LEFT$(B$,1%) : IF B$="J" OR B$="j" C%=1% : GOTO 21 99 CHAIN "KASMENU"