10 REM ++++++++++++++++++++++++++++++++ 20 REM ! Program 0017 BOKSLUT 30 REM ! Utg}va 4.21 83-12-31 32 REM ! Mod. 80 tkn/Printer 841001 40 REM ! av (c) K.J[RBIN 50 REM ! Minne 32 Kbytes f|r flexskiva 60 REM ++++++++++++++++++++++++++++++++ 70 G$='' : P$='PR:B4S72' : REM PRINTERBET 72 L%=150% : REM ANT. KONTON 74 R5%=72% : REM SIDH\JD 80 FOR I%=1% TO 4% 90 G$=G$+CHR$(PEEK(I%+65410)) 100 NEXT I% 110 G$=G$+"-" 120 G1$='' 130 FOR I%=1% TO 25% 140 IF PEEK(I%+65415)=13% GOTO 170 150 G1$=G1$+CHR$(PEEK(I%+65415)) 160 NEXT I% 170 DIM N%(L%) : DIM B$(L%)=12% : DIM D3$(L%)=10% : DIM K3$(L%)=10% 180 DIM ]1$(L%)=10% : DIM ]2$(L%)=10% : DIM M$(14%)=4% 190 FOR I%=1% TO L% : N%(I%)=0% : D3$(I%)="0" : K3$(I%)="0" : ]1$(I%)="0" : ]2$(I%)="0" : NEXT I% : A$="00-00" 200 Z%=PEEK(65408%) 210 ; CHR$(12)TAB(15%)"BOKSLUT" 220 ; TAB(14%)CHR$(151%)STRING$(7%,44%) 230 REM --- L[S PERIOD DATA ---------- 240 ; : ; TAB(8%)"INL[SNING AV PERIODDATA" 250 ; TAB(8%)"SKER FR]N DRIVE 1" 260 OPEN "DR1:PERIOD.DAT" ASFILE 7% 270 FOR I%=1% TO L% 280 INPUTLINE #7%,X$ 290 N%(I%)=VAL(LEFT$(X$,LEN(X$)-2%)) 300 INPUTLINE #7%,X$ 310 B$(I%)=LEFT$(X$,LEN(X$)-2%) 320 INPUTLINE #7%,X$ 330 D3$(I%)=LEFT$(X$,LEN(X$)-2%) 340 INPUTLINE #7%,X$ 350 K3$(I%)=LEFT$(X$,LEN(X$)-2%) 360 NEXT I% 370 INPUTLINE #7%,X$ 380 B%=VAL(LEFT$(X$,LEN(X$)-2%)) 390 INPUTLINE #7%,X$ 400 A$=LEFT$(X$,LEN(X$)-2%) 410 CLOSE 7% 420 REM --- L[S TOTAL DATA ---------- 430 ; : ; TAB(8%)"INL[SNING AV TOTALDATA" 440 ; TAB(8%)"SKER FR]N DRIVE 1" 450 OPEN "DR1:TOTAL.DAT" ASFILE 6% 460 FOR I%=1% TO L% 470 INPUTLINE #6%,X$ 480 ]1$(I%)=LEFT$(X$,LEN(X$)-2%) 490 INPUTLINE #6%,X$ 500 ]2$(I%)=LEFT$(X$,LEN(X$)-2%) 510 NEXT I% 520 INPUTLINE #6%,X$ 530 V%=VAL(LEFT$(X$,LEN(X$)-2%)) 540 CLOSE 6% 550 FOR I%=1% TO L% 560 ]1$(I%)=ADD$(]1$(I%),D3$(I%),2%) 570 ]2$(I%)=ADD$(]2$(I%),K3$(I%),2%) 580 NEXT I% 590 V%=Y% 600 REM *** U.B R.R *** 610 IF Z%=10% GOTO 660 620 ; : ; TAB(8%)"[R PRINTERN P]SLAGEN (J/N)?" 630 ; TAB(8%); 640 GET X$ 650 IF NOT (X$="J" OR X$="j") GOTO 620 660 OPEN P$ ASFILE 5% 670 O$="0" : E$="0" 680 F$="BALANS R[KNING PER DEN " : GOSUB 1440 690 ; #5%,TAB(20%)"TILLG]NGAR" : GOSUB 1520 700 REM ---TILLG]NGAR = KTO 1000-1999 - 710 FOR I%=1% TO L% : IF N%(I%)>1999 THEN 740 720 IF COMP%(]1$(I%),]2$(I%))=0% THEN 740 : O$=SUB$(]1$(I%),]2$(I%),2) : E$=ADD$(E$,O$,2) 730 ; #5%,TAB(20%)N%(I%)" "B$(I%)TAB(60%-LEN(O$))O$ : GOSUB 1520 740 NEXT I% 750 ; #5%,TAB(20%)"SUMMA TILLG]NGAR"TAB(75%-LEN(E$))E$ : GOSUB 1520 760 ; #5%,CHR$(10)TAB(20%)"SKULDER" : R%=R%+1% : GOSUB 1520 770 O$="0" : R$="0" 780 REM ---SKULDER = KTO 2000-2999 - 790 FOR I%=1% TO L% : IF N%(I%)<2000 OR N%(I%)>2999 THEN 820 800 IF COMP%(]1$(I%),]2$(I%))=0% THEN 820 : O$=SUB$(]2$(I%),]1$(I%),2) : R$=ADD$(R$,O$,2) 810 ; #5%,TAB(20%)N%(I%)" "B$(I%)TAB(60%-LEN(O$))O$ : GOSUB 1520 820 NEXT I% : ; #5%,TAB(20%)"SUMMA SKULDER"TAB(75%-LEN(R$))R$ : GOSUB 1520 830 ; #5%,CHR$(10)TAB(20%)"RESULTAT"; 840 X$=SUB$(E$,R$,2) : R$=ADD$(R$,X$,2) 850 ; #5%,TAB(75%-LEN(X$))X$ : R%=R%+1% : GOSUB 1520 860 ; #5%,TAB(20%)"SUMMA SKULDER OCH EGET KAP."TAB(75%-LEN(R$))R$ : GOSUB 1520 870 ; #5%,CHR$(12%); : R%=0% 880 REM *** R R *** 890 H%=0% : F$="RESULTAT R[KNING T.O.M." : GOSUB 1440 900 ; #5%,TAB(20%)"INT[KTER" : GOSUB 1520 910 O$="0" : E$="0" : R$="0" 920 FOR I%=1% TO L% 930 REM ---INT[KTER KTO 3000-3999 940 IF N%(I%)<3000 OR N%(I%)>3999 THEN 990 950 IF COMP%(]1$(I%),]2$(I%))=0% THEN 990 960 ; #5%,TAB(20%)N%(I%)" "B$(I%); 970 O$=SUB$(]2$(I%),]1$(I%),2) : E$=ADD$(E$,O$,2) 980 ; #5%,TAB(60%-LEN(O$))O$ : GOSUB 1520 990 NEXT I% 1000 ; #5%,TAB(20%)"SUMMA INT[KTER"TAB(75%-LEN(E$))E$ : GOSUB 1520 1010 ; #5%,CHR$(10%,10%)TAB(20%)"KOSTNADER" : R%=R%+2% : GOSUB 1520 1020 REM ---KOSTNADER KTO 4000-8999 1030 FOR I%=1% TO L% : IF N%(I%)<4000 THEN 1080 : IF N%(I%)>4999 THEN 1080 1040 IF COMP%(]1$(I%),]2$(I%))=0% THEN 1080 1050 ; #5%,TAB(20%)N%(I%)" "B$(I%); 1060 O$=SUB$(]1$(I%),]2$(I%),2) : R$=ADD$(R$,O$,2) 1070 ; #5%,TAB(60%-LEN(O$))O$ : GOSUB 1520 1080 NEXT I% 1090 ; #5%,TAB(20%)"SUMMA VARUKOSTNAD"TAB(75%-LEN(R$))R$ : GOSUB 1520 1100 R$=SUB$(E$,R$,2) : E$="0" : ; #5%,CHR$(10) : R%=R%+1% : GOSUB 1520 1110 FOR I%=1% TO L% 1140 IF N%(I%)<5000 OR N%(I%)>7899 THEN 1190 1150 IF COMP%(]1$(I%),]2$(I%))=0% THEN 1190 1160 ; #5%,TAB(20%)N%(I%)" "B$(I%); 1170 O$=SUB$(]1$(I%),]2$(I%),2) : E$=ADD$(E$,O$,2) 1180 ; #5%,TAB(60%-LEN(O$))O$ : GOSUB 1520 1190 NEXT I% 1200 ; #5%,TAB(20%)"SUMMA \VRIGA KOSTNADER"TAB(75%-LEN(E$))E$ : R$=SUB$(R$,E$,2) : GOSUB 1520 1210 ; #5%,TAB(20%)"RESULT.F\RE AVSKR"TAB(75%-LEN(R$))R$ : GOSUB 1520 1212 ; #5% : R%=R%+1% 1220 FOR I%=1% TO L% : IF N%(I%)<7900 OR N%(I%)>7999 THEN 1250 1225 IF COMP%(]1$(I%),]2$(I%))=0% THEN 1250 1230 O$=SUB$(]2$(I%),]1$(I%),2) 1232 ; #5%,TAB(20%)N%(I%)" "B$(I%); 1240 ; #5%,TAB(75%-LEN(O$))O$ : GOSUB 1520 1242 R$=ADD$(R$,O$,2) 1250 NEXT I% 1260 ; #5%,TAB(20%)"RESULT EFTER AVSKR."TAB(75%-LEN(R$))R$ : GOSUB 1520 1262 ; #5% : R%=R%+1% 1270 FOR I%=1% TO L% 1280 IF N%(I%)<8000 OR N%(I%)>8799 THEN 1310 : O$=SUB$(]2$(I%),]1$(I%),2) 1285 IF COMP%(]1$(I%),]2$(I%))=0% THEN 1310 1290 ; #5%,TAB(20%)N%(I%)" "B$(I%)TAB(75%-LEN(O$))O$ : GOSUB 1520 1300 R$=ADD$(R$,O$,2) 1310 NEXT I% 1340 ; #5%,TAB(20%)"RESULT. F\RE BOKSLUTSDISP."TAB(75%-LEN(R$))R$ : GOSUB 1520 1350 ; #5% : R%=R%+1% 1360 FOR I%=1% TO L% : IF N%(I%)<8800 THEN 1400 : O$=SUB$(]2$(I%),]1$(I%),2) 1365 IF COMP%(]1$(I%),]2$(I%))=0% THEN 1400 1370 ; #5%,TAB(20%)N%(I%)" "B$(I%)TAB(75%-LEN(O$))O$ : GOSUB 1520 1390 R$=ADD$(R$,O$,2) 1400 NEXT I% 1405 ; #5%,TAB(20%)"]RS-RESULTAT"TAB(75%-LEN(R$))R$ : GOSUB 1520 1410 ; #5%,CHR$(12%); : CLOSE 5% 1420 CHAIN "BOKF\R" 1430 END 1440 REM --- UTSKRIFTS RUBRIK ------ 1450 H%=H%+1% : X$="SID"+NUM$(H%) 1460 ; #5%,TAB(80%-LEN(X$))X$ 1470 ; #5%,STRING$(80%,61%) 1480 ; #5%,G1$TAB(25%)F$TAB(70%)G$A$ 1490 ; #5%,STRING$(80%,61%) 1500 R%=4% 1510 RETURN 1520 REM --- RADR[KNARE -------------- 1530 R%=R%+1% 1540 IF R%>R5%-7% THEN ; #5%,CHR$(12%); : R%=0% : GOSUB 1440 1550 RETURN