10 REM ================================ 15 REM = = 20 REM = FAKTURIERUNG 20.03.1984 = 25 REM = = 30 REM ================================ 35 REM = = 40 REM = (C) HANS-ULLRICH SCHREIBER = 45 REM = HUMBOLDTSTRASSE 2 A = 50 REM = 4950 M I N D E N = 55 REM = = 60 REM = TELEFON: 0571/4 93 60 = 65 REM = = 70 REM ================================ 75 REM = = 80 REM = COMMODORE 64 + FLOPPY 1541 = 85 REM = MATRIXDRUCKER EPSON RX 80 = 90 REM = CENTRONICS INTERFACE 9200 = 92 REM = = 94 REM ================================ 100 REM 110 REM ------------------------------- 120 REM - ALLG. STEUERUNG - 130 REM ------------------------------- 140 REM 150 POKE 53280,0:POKE 53281,0 160 PRINT CHR$(147):PRINT CHR$(14) 170 CLR 180 DIM RT$(35) 300 REM 310 REM ------------------------------- 320 REM - FORMULAR - 330 REM ------------------------------- 340 REM 350 F$(1)="***** [200][193][206][211]-[213][204][204][210][201][195][200][160][211][195][200][210][197][201][194][197][210] *****" 360 F$(2)=" H.-U. SCHREIBER * HUMBOLDTSTR. 2 A * 4950 MINDEN" 370 F$(3)=" ------------------------------------------------" 380 F$(4)=" [210][197][195][200][206][213][206][199] [206][210] " 390 F$(5)="==============================================" 500 REM 510 REM ------------------------------- 520 REM - FESTWERTE - 530 REM ------------------------------- 540 REM 550 ME(1)=0.14 560 C$=CHR$(13):D$=CHR$(32) 570 E$=CHR$(133) 580 L$=" " 590 LZ$=" " 600 F$(5)=L$+LEFT$(F$(5)+F$(5),82) 700 REM 705 REM ------------------------------- 710 REM - DATA BEGRIFFE - 715 REM ------------------------------- 720 REM 725 FOR I=1 TO 5:READ AN$(I):NEXT 730 DATA "1) : ":DATA "2) : " 735 DATA "3) :[160]":DATA "4) : " 740 DATA "5) : " 745 REM 750 FOR I=1 TO 2:READ RN$(I):NEXT 755 DATA "RG-NR : " 760 DATA "DATUM : " 765 REM 770 FOR I=1 TO 2:READ LF$(I):NEXT 775 DATA "LFSCH :[146] ":DATA "DATUM :[146] " 780 REM 785 FOR I=1 TO 6:READ AR$(I):NEXT 790 DATA "MENGE :[146] " 795 DATA "ME :[146] " 800 DATA "ARTIKEL :[146] " 805 DATA "EINZELPR :[146] " 810 DATA "GESAMTPR :[146] " 815 DATA "PE :[146] " 820 REM 825 FOR I=1 TO 3:READ RB$(I):NEXT 830 DATA "WARENWERT : " 835 DATA "MWST 14 % : " 840 DATA "ENDBETRAG : " 1000 REM 1010 REM ------------------------------ 1020 REM - PRG MASKE - 1030 REM ------------------------------ 1035 REM 1040 PRINT CHR$(147) 1045 REM 1050 PRINT"***************************************" 1060 PRINT"* *" 1070 PRINT"* F A K T U R I E R U N G 1.1 *" 1080 PRINT"* *" 1090 PRINT"***************************************" 1100 REM 1110 REM ------------------------------ 1120 REM - ANSCHRIFT - 1130 REM ------------------------------ 1140 REM 1145 FOR L=1 TO 3:PRINT:NEXT L 1150 PRINT"RECHNUNGSANSCHRIFT" 1160 PRINT"------------------" 1170 PRINT 1180 FOR I=1 TO 4:AS$(I)="" 1190 PRINT AN$(I);:INPUT AS$(I) 1200 IF AS$(I)="***" THEN END 1210 NEXT 1220 I=5:PRINT CHR$(17); 1230 PRINT AN$(I);:INPUT AS$(I) 1300 REM 1310 REM ------------------------------ 1320 REM - RG DATEN - 1330 REM ------------------------------ 1340 REM 1350 PRINT:PRINT 1360 FOR I=1 TO 2:RE$(I)="" 1370 PRINT CHR$(17); 1380 PRINT TAB(18) RN$(I);:INPUT RE$(I) 1385 IF RE$(I)="***" THEN 1040 1390 NEXT 1400 REM 1410 REM ------------------------------ 1420 REM - LFSCH - 1430 REM ------------------------------ 1440 REM 1450 PRINT CHR$(147) 1460 PRINT"LIEFERSCHEIN" 1470 PRINT"------------" 1480 PRINT 1490 I=1:LS$(1)="" 1500 PRINT LF$(1);:INPUT LS$(I) 1510 I=2:LS$(2)="" 1520 PRINT CHR$(145); 1530 PRINT TAB(24) LF$(I);:INPUT LS$(I) 1600 REM 1610 REM ------------------------------ 1620 REM - ARTIKEL - 1630 REM ------------------------------ 1640 REM 1650 FOR L=1 TO 3:PRINT:NEXT L 1660 PRINT"ARTIKELEINGABE" 1670 PRINT"--------------" 1680 PRINT 1690 I=1:AT$(I)="" 1700 PRINT AR$(I);:INPUT AT$(I) 1710 I=2:PRINT CHR$(145); 1720 PRINT TAB(24) AR$(I);:INPUT AT$(I) 1730 FOR I=3 TO 4:PRINT CHR$(17); 1740 PRINT AR$(I);:INPUT AT$(I):NEXT 1750 I=6:AT$(6)="":PRINT CHR$(145); 1760 PRINT TAB(24) AR$(I);:INPUT AT$(I) 1800 REM 1810 REM ------------------------------ 1820 REM - VERZWEIGUNG 1 - 1830 REM ------------------------------ 1840 REM 1850 FOR L=1 TO 3:PRINT:NEXT L 1860 PRINT"NEUER ARTIKEL -> 1 RECHNUNG ENDE -> 2[146]" 2000 REM 2010 REM ------------------------------ 2020 REM - GESAMTPREIS - 2030 REM ------------------------------ 2040 REM 2050 IF AT$(6)>"3" OR AT$(6)="" THEN AT$(6)="0":GOTO 2090 2060 IF AT$(6)="1" THEN GP=VAL(AT$(1))*VAL(AT$(4))/10:GOTO 2100 2070 IF AT$(6)="2" THEN GP=VAL(AT$(1))*VAL(AT$(4))/100:GOTO 2100 2080 IF AT$(6)="3" THEN GP=VAL(AT$(1))*VAL(AT$(4))/1000:GOTO 2100 2090 IF AT$(6)="0" THEN GP=VAL(AT$(1))*VAL(AT$(4)) 2100 REM 2110 GP=INT(GP*100+0.5)/100 2120 NZ$="":G=GP:GOSUB 30500:GP$=NZ$ 2130 ZS=ZS+VAL(GP$) 2300 REM 2310 REM ------------------------------ 2320 REM - GET - 2330 REM ------------------------------ 2340 REM 2350 A$="":GET A$:IF A$="" THEN 2350 2360 IF A$<"1" OR A$>"2" THEN 2350 2500 REM 2510 REM ------------------------------ 2520 REM - GOSUB - 2530 REM ------------------------------ 2540 REM 2550 IF A$="2" THEN 2600 2560 REM 2570 GOSUB 31500:GOSUB 32000 2580 AT$(5)="":GOTO 1400 2590 REM 2600 GOSUB 31000:GOSUB 31500 2610 GOSUB 32000:GOSUB 32500 2620 GOSUB 33000:Z=0 2630 GOSUB 35000:GOTO 100 30000 REM 30010 REM ============================= 30020 REM = ROUTINEN = 30030 REM ============================= 30500 REM 30510 REM ----------------------------- 30520 REM - NACHKOMMA / 0.00 - 30530 REM ----------------------------- 30540 REM 30550 NZ$=STR$(G) 30560 IF LEFT$(RIGHT$(NZ$,3),1)= "." THEN 30590 30570 IF LEFT$(RIGHT$(NZ$,2),1)= "." THEN NZ$=NZ$+"0":GOTO 30590 30580 IF LEFT$(RIGHT$(NZ$,1),1)<>"." THEN NZ$=NZ$+".00" 30590 IF MID$(NZ$,2,1)="." THEN NZ$=LEFT$(NZ$,1)+"0"+MID$(NZ$,2,2) 30600 G$=STR$(G):G$="":G=VAL(G$) 30610 RETURN 31000 REM 31010 REM ----------------------------- 31020 REM - AUFBAU ANSCHRIFT - 31030 REM ----------------------------- 31040 REM 31050 AS$(1)=L$+AS$(1):AS$(2)=L$+AS$(2) 31060 AS$(3)=L$+AS$(3):AS$(4)=L$+AS$(4) 31070 AS$(5)=L$+AS$(5) 31080 REM 31090 IF AS$(4)="" THEN 31120 31100 REM 31110 AS$=C$+AS$(1)+C$+AS$(2)+C$+AS$(3)+C$+AS$(4)+C$+C$+AS$(5):GOTO 31140 31120 AS$=AS$(1)+C$+AS$(2)+C$+AS$(3)+C$+C$+AS$(5) 31130 REM 31140 RE$=LEFT$((RE$(1)+LZ$),33)+RIGHT$(LZ$+RE$(2),35) 31150 RETURN 31500 REM 31510 REM ----------------------------- 31520 REM - AUFBAU ZEILE - 31530 REM ----------------------------- 31540 REM 31550 IF LS$(1)="" AND LS$(2)="" THEN LS$=LEFT$(LZ$,16):GOTO 31600 31560 IF LS$(1)="" OR LS$(2)="" THEN LS$=LEFT$(LZ$,16):GOTO 31600 31570 REM 31580 LS$=L$+LEFT$(LS$(1),4)+D$+D$+LEFT$(LS$(2),5) 31590 REM 31600 AT$(1)=RIGHT$(LZ$+AT$(1),8) 31610 AT$(2)=LEFT$(AT$(2)+LZ$,4) 31620 AT$(3)=LEFT$(AT$(3)+LZ$,34) 31630 AT$(4)=RIGHT$(LZ$+AT$(4),8) 31640 AT$(5)=RIGHT$(LZ$+GP$,9) 31650 REM 31660 AT$=LS$+D$+D$+AT$(1)+D$+D$+AT$(2)+D$+D$+AT$(3)+D$+AT$(4)+D$+AT$(5) 31670 RETURN 32000 REM 32010 REM ----------------------------- 32020 REM - AUFBAU TEXT - 32030 REM ----------------------------- 32040 REM 32050 Z=Z+1:RT$(Z)=RT$(Z)+AT$ 32060 LS$="":AT$="" 32070 RETURN 32500 REM 32510 REM ----------------------------- 32520 REM - SUMMENBILDUNG - 32530 REM ----------------------------- 32540 REM 32550 GP=VAL(GP$) 32560 G$=STR$(G):G$="":G=VAL(G$) 32570 NZ$="":G=ZS:GOSUB 30500:ZS$=NZ$ 32580 ME=INT(ZS*ME(1)*100+0.5)/100 32590 NZ$="":G=ME:GOSUB 30500:ME$=NZ$ 32600 SU=ZS+ME 32610 NZ$="":G=SU:GOSUB 30500:SU$=NZ$ 32620 REM 32630 ZS$=RIGHT$(L$+ZS$,9) 32640 ME$=RIGHT$(L$+ME$,9) 32650 SU$=RIGHT$(L$+SU$,9) 32700 REM 32710 REM ----------------------------- 32720 REM - SUMMENTEXT - 32730 REM ----------------------------- 32740 REM 32750 ST$(1)=RB$(1)+LEFT$(LZ$,10)+ZS$ 32760 ST$(2)=RB$(2)+LEFT$(LZ$,10)+ME$ 32770 ST$(3)=RB$(3)+LEFT$(LZ$,10)+SU$ 32780 REM 32790 ST$(1)=LEFT$(LZ$,56)+ST$(1) 32800 ST$(2)=LEFT$(LZ$,56)+ST$(2) 32810 ST$(3)=LEFT$(LZ$,56)+ST$(3) 32820 REM 32830 RETURN 33000 REM 33010 REM ----------------------------- 33020 REM - ZAHLUNGSBED. - 33030 REM ----------------------------- 33040 REM 33050 FOR L=1 TO 3:PRINT:NEXT L 33060 PRINT"2% SKONTO -> 1 3% SKONTO -> 2[146]" 33100 REM 33110 REM ----------------------------- 33120 REM - GET - 33130 REM ----------------------------- 33140 REM 33150 A$="":GET A$:IF A$="" THEN 33150 33160 IF A$=CHR$(13) THEN 33200 33170 IF A$<"1" OR A$>"2" THEN 33150 33200 REM 33210 REM ----------------------------- 33220 REM - ZB TEXTE - 33230 REM ----------------------------- 33240 REM 33250 ZB$(1)="ZAHLUNG : " 33260 ZB$(2)="NACH ERHALT - OHNE ABZUG" 33270 ZB$(3)="INNERHALB 8 TAGEN " 33280 ZB$(4)="INNERHALB 30 TAGEN NETTO KASSE" 33290 ZB$(5)="MIT 2% SKONTO" 33300 ZB$(6)="MIT 3% SKONTO" 33310 REM 33320 IF A$=CHR$(13) THEN ZB$=ZB$(1)+ZB$(2):GOTO 33360 33330 IF A$="1" THEN ZB$=ZB$(1)+ZB$(3)+ZB$(5)+C$+LEFT$(LZ$,34)+ZB$(4) 33340 IF A$="2" THEN ZB$=ZB$(1)+ZB$(3)+ZB$(6)+C$+LEFT$(LZ$,34)+ZB$(4) 33350 REM 33360 ZB$=LEFT$(LZ$,22)+ZB$ 33370 RETURN 35000 REM 35010 REM ----------------------------- 35020 REM - PRINT DRUCKER - 35030 REM ----------------------------- 35040 REM 35050 CLOSE 4:OPEN 4,4 35060 PRINT#4,CHR$(27);"C";CHR$(0);CHR$(12); 35070 PRINT#4,CHR$(27);"J";CHR$(110); 35080 PRINT#4,CHR$(27);"P"; 35090 PRINT#4,CHR$(27);"G"; 35100 PRINT#4,CHR$(27);"W";CHR$(1); 35110 PRINT#4,F$(1) 35120 PRINT#4,CHR$(27);"W";CHR$(0); 35130 PRINT#4,CHR$(27);"H"; 35140 PRINT#4,CHR$(27);"J";CHR$(120); 35150 PRINT#4,CHR$(27);"P"; 35160 PRINT#4,CHR$(27);CHR$(15); 35170 PRINT#4,F$(2) 35180 PRINT#4,F$(3) 35190 PRINT#4,CHR$(27);"M"; 35200 PRINT#4,AS$ 35210 PRINT#4,CHR$(27);"J";CHR$(110); 35215 PRINT#4,F$(5) 35220 PRINT#4,CHR$(27);"G"; 35230 PRINT#4,F$(4); 35240 PRINT#4,CHR$(27);"H"; 35250 PRINT#4,CHR$(27);"M"; 35260 PRINT#4,RE$ 35265 PRINT#4,F$(5) 35270 PRINT#4,CHR$(27);"J";CHR$(20); 35280 Z=Z+1:IF RT$(Z)="" THEN 35300 35290 PRINT#4,RT$(Z):GOTO 35280 35300 PRINT#4,CHR$(27);"J";CHR$(60); 35310 PRINT#4,ST$(1) 35320 PRINT#4,ST$(2) 35330 PRINT#4,CHR$(27);"J";CHR$(15); 35340 PRINT#4,CHR$(27);"G"; 35350 PRINT#4,ST$(3) 35360 PRINT#4,CHR$(27);"H"; 35370 PRINT#4,CHR$(27);"J";CHR$(110); 35380 PRINT#4,ZB$ 35390 PRINT#4,CHR$(07); 35400 PRINT#4,CHR$(12); 35410 PRINT#4,CHR$(27);CHR$(64) 35420 CLOSE 4:RETURN