10 REM ++++++++++++++++++++++++++++++++ 20 REM ! Program 0016 R]BALANS 30 REM ! Utg}va 4.21 83-12-31 32 REM ! Mod.Rad 692+702 83-08-23 34 REM ! Mod. 80 tkn/Printer 84-10-01 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 Z%=PEEK(65408%) 180 DIM N%(L%) : DIM B$(L%)=12% : DIM D3$(L%)=10% : DIM K3$(L%)=10% : DIM ]1$(L%)=10% : DIM ]2$(L%)=10% 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 REM --- START ------------------- 210 ; CHR$(12%)TAB(12%)"UTSKRIFT DAGBOK" 220 ; TAB(11%)CHR$(151%)STRING$(15%,44%) 230 ; : ; TAB(8%)"[R PRINTERN P]SLAGEN" 240 ; : ; TAB(8%)"SVARA J" 250 ; TAB(8%)"OM ENDAST OMSATTA" 260 ; TAB(8%)"KONTON SKA REDOVISAS" 270 ; : ; TAB(8%)"SVARA A" 280 ; TAB(8%)"OM SAMTLIGA" 290 ; TAB(8%)"KONTON SKA REDOVISAS" 300 ; TAB(8%); 310 GET X$ 320 ; TAB(8%)X$ 330 IF X$="A" OR X$="a" A%=1% : GOTO 360 340 IF NOT (X$="J" OR X$="j") THEN 190 350 A%=0% 360 REM --- L[S PERIOD DATA ---------- 370 ; : ; TAB(8%)"INL[SNING AV PERIODDATA" 380 ; TAB(8%)"SKER FR]N DRIVE 1" 390 OPEN "DR1:PERIOD.DAT" ASFILE 7% 400 FOR I%=1% TO L% 410 INPUTLINE #7%,X$ 420 N%(I%)=VAL(LEFT$(X$,LEN(X$)-2%)) 430 INPUTLINE #7%,X$ 440 B$(I%)=LEFT$(X$,LEN(X$)-2%) 450 INPUTLINE #7%,X$ 460 D3$(I%)=LEFT$(X$,LEN(X$)-2%) 470 INPUTLINE #7%,X$ 480 K3$(I%)=LEFT$(X$,LEN(X$)-2%) 490 NEXT I% 500 INPUTLINE #7%,X$ 510 B%=VAL(LEFT$(X$,LEN(X$)-2%)) 520 INPUTLINE #7%,X$ 530 A$=LEFT$(X$,LEN(X$)-2%) 540 CLOSE 7% 550 REM --- L[S TOTAL DATA ---------- 560 ; : ; TAB(8%)"INL[SNING AV TOTALDATA" 570 ; TAB(8%)"SKER FR]N DRIVE 1" 580 OPEN "DR1:TOTAL.DAT" ASFILE 6% 590 FOR I%=1% TO L% 600 INPUTLINE #6%,X$ 610 ]1$(I%)=LEFT$(X$,LEN(X$)-2%) 620 INPUTLINE #6%,X$ 630 ]2$(I%)=LEFT$(X$,LEN(X$)-2%) 640 NEXT I% 650 CLOSE 6% 660 IF Z%=10% M$="DR1:DAGBOK.DAT" : GOTO 780 670 ; : ; TAB(5%)"ANGE \NSKAD UTSKRIFTSM]NAD" 680 ; TAB(5%)"SVARA MED 2 SIFFROR <01-12>" 690 ; TAB(5%)"INNEVARANDE M]NAD = RETURN" 692 ; TAB(5%)"INGEN DAGBOK = N" 700 ; TAB(5%); : INPUT X$ 702 IF X$="N" OR X$="n" GOTO 1070 710 IF X$="" M$="DR1:DAGBOK.DAT" : GOTO 800 720 IF LEN(X$)<>2% GOTO 670 730 IF ASC(X$)=48% THEN 750 740 IF ASC(X$)=49% THEN 760 ELSE 670 750 IF ASC(MID$(X$,2%,1%))<48% OR ASC(MID$(X$,2%,1%))>57% GOTO 670 ELSE 770 760 IF ASC(MID$(X$,2%,1%))<48% OR ASC(MID$(X$,2%,1%))>50% GOTO 670 770 M$="DR1:DAGBOK"+X$+".DAT" : A%=5% 780 REM --- PRINTER DAGBOK ----------- 790 ONERRORGOTO 1550 800 OPEN M$ ASFILE 6% 810 ONERRORGOTO 0 820 INPUT #6%,A$ 830 INPUT #6%,X% 840 OPEN P$ ASFILE 5% 850 GOSUB 1360 860 ONERRORGOTO 1030 870 INPUT #6%,A$,X% 880 INPUTLINE #6%,X$ 890 T$=LEFT$(X$,LEN(X$)-2%) 900 FOR I%=1% TO 10% 910 INPUT #6%,X%(I%),X1$(I%),X2$(I%),\% 920 FOR J%=1% TO L% : IF X%(I%)=N%(J%) GOTO 925 ELSE 980 925 IF I%=1% LET A$=A$+NUM$(X%)+"-"+RIGHT$(NUM$(I%),2)+SPACE$(1%)+T$ : GOTO 940 930 A$=A$+NUM$(X%)+"-"+RIGHT$(NUM$(I%),2) 940 A$=A$+SPACE$(39%-LEN(A$))+NUM$(N%(J%))+SPACE$(1%)+B$(J%) 950 ; #5,A$TAB(69%-(LEN(X1$(I%))))X1$(I%)TAB(80%-(LEN(X2$(I%))))X2$(I%) 960 A$=LEFT$(A$,5%) 970 GOSUB 1470 980 NEXT J% 990 IF \% GOTO 1010 1000 NEXT I% 1010 ; #5% : GOSUB 1470 1020 GOTO 870 1030 ; #5%,STRING$((R5%-6%)-R%,10%);TAB(40)"T.O.M. VERIFIKAT NR "X%" "G$A$ 1050 ; #5%,STRING$(5%,10%); : CLOSE 5% 1060 CLOSE 6% 1070 REM *** R}balans *** 1080 IF A%=5% GOTO 1330 1090 OPEN P$ ASFILE 4% 1100 X3$="0" : X4$="0" 1110 ; #4%,TAB(5%)"M]NADSR]BALANS"TAB(55%)"SALDOBALANS" 1120 ; #4%,TAB(5%)G$LEFT$(A$,2%)"-01 - "G$A$TAB(55%)G$"01-01 - "G$A$ 1130 ; #4%,TAB(5%)STRING$(44%,61%)TAB(55%)STRING$(25%,61%) 1140 ; #4%,TAB(5%)"KONTO"TAB(30%)"DEBET"TAB(43%)"KREDIT"TAB(61%)"DEBET"TAB(74%)"KREDIT" 1150 R%=4% 1160 FOR I%=1% TO L% 1170 IF N%(I%)>0 GOTO 1180 ELSE 1290 1180 IF A% GOTO 1200 1190 X$=".00" : X$=ADD$(D3$(I%),K3$(I%),2) : IF X$=".00" THEN 1290 1200 ]1$(I%)=ADD$(]1$(I%),D3$(I%),2%) 1210 ]2$(I%)=ADD$(]2$(I%),K3$(I%),2%) 1220 IF COMP%(]1$(I%),]2$(I%))=-1% THEN 1240 1230 ]1$(I%)=SUB$(]1$(I%),]2$(I%),2%) : X%=66% : GOTO 1250 1240 ]1$(I%)=SUB$(]2$(I%),]1$(I%),2%) : X%=80% 1250 ; #4%,TAB(5%)N%(I%)" "B$(I%)TAB(35%-(LEN(D3$(I%))))D3$(I%); 1260 ; #4%,TAB(49-(LEN(K3$(I%))))K3$(I%)TAB(X%-LEN(]1$(I%)))]1$(I%) 1270 GOSUB 1510 1280 X3$=ADD$(X3$,D3$(I%),2) : X4$=ADD$(X4$,K3$(I%),2) 1290 NEXT I% 1300 ; #4%,CHR$(10%)TAB(5%)"SUMMA"TAB(35%-(LEN(X3$)))X3$TAB(49%-(LEN(X4$)))X4$ 1310 R%=R%+1% : GOSUB 1510 1320 ; #4%,STRING$(R5%-R%,10%); : CLOSE 4% 1330 IF Z%=10% CHAIN "HUVUDBOK" 1340 CHAIN "BOKF\R" 1350 END 1360 REM --- UTSKRIFTS RUBRIK ------ 1370 H%=H%+1% : X$="SID"+NUM$(H%) 1380 ; #5%,TAB(80%-LEN(X$))X$ 1390 X$=NUM$(X%) 1400 ; #5%,STRING$(80%,61%) 1410 ; #5%,G1$TAB(30%)"DAGBOK"TAB(50%-LEN(X$))"FR.O.M VERIFIKAT NR"X$" "G$A$ 1420 ; #5%,STRING$(80%,61%) 1430 ; #5%,"DATUM"TAB(6%)"VERF"TAB(13%)"TEXT"TAB(40%)"KONTO"TAB(64%)"DEBET"TAB(74%)"KREDIT" 1440 ; #5%,STRING$(80%,45%) 1450 R%=R%+6% 1460 RETURN 1470 REM --- RADR[KNARE 1 ----------- 1480 R%=R%+1% 1490 IF R%=R5%-7% THEN ; #5%,STRING$(R5%-R%,10%); : R%=0% : GOSUB 1360 1500 RETURN 1510 REM --- RADR[KNARE 2 ----------- 1520 R%=R%+1% 1530 IF R%>R5%-7% THEN ; #4%,STRING$(R5%-R%,10%); : R%=0% 1540 RETURN 1550 REM --- FEL M]NAD -------------- 1560 ; : ; CHR$(7%)TAB(5%)"M]NADEN FINNS EJ P] DENNA SKIVA !" 1570 GOTO 670 1580 END