home *** CD-ROM | disk | FTP | other *** search
/ 64'er Special 86 / 64er_Magazin_Sonderheft_86_19xx_Markt__Technik_de_Side_A.d64 / rechnung (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  8KB  |  325 lines

  1. 100 ifff$=""thenff$="                                        ":load"inp/per",8,1
  2. 110 poke53272,23:poke650,128
  3. 120 poke53281,15:poke53280,15
  4. 130 h$="[147] ":h1$="  ......................................"
  5. 140 z$=" [196][205]":z1$="  ":m1$="qm/lfm":z2$="   "
  6. 150 dimc$(301,3):l$=" [208]reis pro [197]inheit "
  7. 160 open3,8,2,"textdaten,l,"+chr$(88)
  8. 170 open2,8,15
  9. 180 print"[147][144][211]ind schon [196]aten angelegt [202]/[206]"
  10. 190 poke198,0:wait198,1:getzz$:ifzz$<>"j"then220
  11. 200 print#2,"p"chr$(2)chr$(1)chr$(0)chr$(1)
  12. 210 input#3,sm
  13. 220 print"[147]"
  14. 230 print"      [144]                       "
  15. 240 print"    [149][146] [205]enue-[193]ngebot [144]    "
  16. 250 print"      [144]                       "
  17. 260 print"    1 [144][146]  [212]extdaten eintragen"
  18. 270 print"    2 [144][146]  [212]extdatei auf [194]ildschirm"
  19. 280 print"    3 [144][146]  [212]extdatei drucken"
  20. 290 print"    4 [144][146]  [212]extdatei korrigieren"
  21. 300 print"    5 [144][146]  [193]ngebot / [210]echnung drucken"
  22. 310 print"    6 [144][146]  [212]extdatei anlegen/vergroessern"
  23. 320 print"    e [144][146]  [197]nde"
  24. 330 geta$:ifa$="e"thenclose2:close3:print"[147]":end
  25. 340 ifa$<"1"ora$>"6"then330
  26. 350 onval(a$)goto370,520,670,860,1210,3040
  27. 360 rem"***************************
  28. 370 [143]"* neue texte einspeichern *
  29. 380 rem"***************************
  30. 390 [153]h$:[153]"(NULL)chluessel (2-";sm;") oder 'e' fuer valnde"
  31. 400 [158]49152:[133]s$
  32. 410 [139]s$[178]"e"[167]220
  33. 420 sl[178][197](s$)
  34. 430 [139]sl[179]2[176]sl[177]sm[167][160]1:[137]390
  35. 440 [153]h$:t$[178]""
  36. 450 [153]"ononmid$etzt bitte den (NULL)ext fuer (NULL)chluessel";sl:[153]h1$:[158]49152:[133]t$
  37. 460 [153]"loadcmd";h$:[153]h1$,"onon  zweite (NULL)eile fuer (NULL)l";sl:[153]:t1$[178]""
  38. 470 [158]49152:[133]t1$
  39. 480 [153]h$;"onon(NULL)reis pro valinheit(stck/lfm/qm)":[158]49152:[133]p$
  40. 490 [141]2740
  41. 500 [137]370
  42. 510 [143]"****************************
  43. 520 rem"* textdatei auf bildschirm *
  44. 530 [143]"****************************
  45. 540 gosub2960
  46. 550 printchr$(147)
  47. 560 forsl=atoe
  48. 570 gosub2840
  49. 580 ifaa$="leer"then630
  50. 590 p$=mid$(ac$,1,4)+","+mid$(ac$,6,2)
  51. 600 print""sl"[157] [146]";tab(6)l$;z1$;""p$;z$;" "
  52. 610 print""aa$;
  53. 620 printab$"[144]"
  54. 630 nextsl
  55. 640 wait198,1
  56. 650 goto220
  57. 660 rem"***********************
  58. 670 [143]"*  textdatei drucken  *
  59. 680 rem"***********************
  60. 690 [153]h$;" peekitte warten !!!"
  61. 700 [159]1,4,7
  62. 710 x[178]0:[152]1,"            (NULL)lenleft$(NULL)(NULL)val(NULL)(NULL)val(NULL) - (NULL)right$(NULL)(NULL)val"
  63. 720 [152]1,"            ------------------"
  64. 730 lz[178]43:ll$[178]" ":[141]3300:ll$[178]ll$[170]l$:[152]1,ll$:[152]1
  65. 740 [141]2960
  66. 750 [129]sl[178]a[164]e
  67. 760 [141]2840
  68. 770 [139]aa$[178]"leer"[167]820
  69. 780 p$[178][202](ac$,1,4)[170]","[170][202](ac$,6,2)
  70. 790 lz[178]5:ll$[178][196](sl):[141]3300:ll$[178]ll$[170]aa$
  71. 800 lz[178]47:[141]3300:ll$[178]ll$[170]p$[170]z$:[152]1,ll$
  72. 810 ll$[178]" ":lz[178]5:[141]3300:ll$[178]ll$[170]ab$:[152]1,ll$
  73. 820 [130]sl
  74. 830 [152]1
  75. 840 [160]1:[137]220
  76. 850 [143]"**********************
  77. 860 rem"* textdaten aendern  *
  78. 870 [143]"**********************
  79. 880 printh$
  80. 890 print"[203]orrektur : [211]atzschluessel oder 'e' ";:sys49152:inputsl$:sl=val(sl$)
  81. 900 ifsl$="e"then220
  82. 910 ifsl<2orsl>smthen880
  83. 920 gosub2840
  84. 930 printchr$(147)
  85. 940 ifaa$="leer"then3030
  86. 950 p$=ac$:t$="":t1$=""
  87. 960 print"[211]chluessel    =";sl
  88. 970 printaa$
  89. 980 printab$
  90. 990 print"[208]reis        =";ac$
  91. 1000 print"welche [193]enderung wollen sie vornehmen   [212]ext o. [208]reis  t/p/e "
  92. 1010 sys49152:inputq$
  93. 1020 ifq$<>"t"andq$<>"p"andq$<>"e"then1000
  94. 1030 ifq$="e"then880
  95. 1040 ifq$="t"then1060
  96. 1050 ifq$="p"then1140
  97. 1060 printh$;" ";aa$
  98. 1070 print"";:sys49152:inputt$:t$=left$(t$,40)
  99. 1080 printh$;" ";ab$
  100. 1090 print"";:sys49152:inputt1$:t1$=left$(t1$,40)
  101. 1100 print"[145][145]";t$;"   ";t1$
  102. 1110 wait198,1
  103. 1120 gosub2720
  104. 1130 goto880
  105. 1140 printh$;z1$;ac$:t$=aa$:t1$=ab$
  106. 1150 print"";:sys49152:inputp$:p$=right$(p$,7)
  107. 1160 print"[145]";aa$;ab$;p$;z$
  108. 1170 wait198,1
  109. 1180 gosub2720
  110. 1190 goto880
  111. 1200 rem"****************************
  112. 1210 [143]"* angebot zusammen stellen *
  113. 1220 rem"****************************
  114. 1230 [153]h$:z[178]0:gs[178]0
  115. 1240 [153]"onon(NULL)ind die firmeneigenen atnngaben":[153]"gespeichert j/n   jcmdcmdcmd";
  116. 1250 [158]49152:[133]q$
  117. 1260 [139]q$[179][177]"j"[175]q$[179][177]"n"[167]1240
  118. 1270 [139]q$[178]"j"[167]2520
  119. 1280 [153]"(NULL)ame ihrer ascirma";:[158]49152:[133]f1$
  120. 1290 [153]"(NULL)trasse         ";:[158]49152:[133]f2$
  121. 1300 [153]"(NULL)ohnort         ";:[158]49152:[133]f3$
  122. 1310 [153]"peekerufszweig     ";:[158]49152:[133]f4$
  123. 1320 [153]"(NULL)ontonummer     ";:[158]49152:[133]f5$
  124. 1330 [153]"peekank            ";:[158]49152:[133]f6$
  125. 1340 [153]"peekankleitzahl    ";:[158]49152:[133]f7$
  126. 1350 [153]"(NULL)elefon nr.     ";:[158]49152:[133]f8$
  127. 1360 [153]h$
  128. 1370 [153]"ascirmendaten speichern j/n";
  129. 1380 [158]49152:[133]q$
  130. 1390 [139]q$[179][177]"j"[175]q$[179][177]"n"[167]1360
  131. 1400 [139]q$[178]"j"[167]2400
  132. 1410 [153]"str$atum";:[158]49152:[133]fa$
  133. 1420 [153]"'mein atnngebot/meine (NULL)echnung'":[158]49152:[133]f9$
  134. 1430 [153]h$;"atnngaben zum (NULL)unden:wait":[153]
  135. 1440 [153]"atnnrede ('left$errn ascrau ascirma')";:[158]49152:[133]a1$:[153]
  136. 1450 [153]"(NULL)orname (NULL)achname";:[158]49152:[133]a2$
  137. 1460 [153]"(NULL)trasse         ";:[158]49152:[133]a3$
  138. 1470 [153]"(NULL)ohnort         ";:[158]49152:[133]a4$
  139. 1480 [153]"peeketrifft:       ";:[158]49152:[133]a5$
  140. 1490 [153]h$:[153]"(NULL)usammenstellen des atnngebots:":[153]
  141. 1500 [153]"(NULL)chluessel 2-";sm"
  142. 1510 print"[196]rucken    'd'"
  143. 1520 sys49152:inputsl$
  144. 1530 ifsl$=""then1520
  145. 1540 ifsl$="d"then1750
  146. 1550 sl=val(sl$):ifsl<2orsl>smthen1490
  147. 1560 gosub2840
  148. 1570 ifaa$="leer"then1520
  149. 1580 printaa$ab$"1 [197]inheit="ac$"[196][205]"
  150. 1590 ifz>300thenprint"[203]eine weiteren [197]ingaben moeglich":goto1520
  151. 1600 print"[193]nzahl an [197]inheiten";:sys49152:inputm$
  152. 1610 ifm$<"1"orm$>"9"then1600
  153. 1620 z=z+1:m=val(m$)
  154. 1630 p=val(ac$):ps=p*m
  155. 1640 gs=gs+ps
  156. 1650 c$(z,1)=aa$+"       "
  157. 1660 p$=mid$(ac$,1,4)+","+mid$(ac$,6,2)
  158. 1670 c$(z,1)=c$(z,1)+"   "+p$
  159. 1680 a=m:gosub2320
  160. 1690 c$(z,1)=c$(z,1)+v1$
  161. 1700 a=ps:gosub2320
  162. 1710 c$(z,1)=c$(z,1)+v1$+z$
  163. 1720 c$(z,2)=ab$
  164. 1730 goto1490
  165. 1740 rem"************************
  166. 1750 [143]"* angebote ausdrucken  *
  167. 1760 rem"************************
  168. 1770 z1[178]28:i[178]1
  169. 1780 [159]1,4,7
  170. 1790 [152]1
  171. 1800 lz[178]4:ll$[178]" ":[141]3300:ll$[178]ll$[170]f1$:lz[178]54:[141]3300:ll$[178]ll$[170]f2$:[152]1,ll$
  172. 1810 [141]3290:ll$[178]ll$[170]f3$:[152]1,ll$
  173. 1820 lz[178]4:ll$[178]" ":[141]3300:ll$[178]ll$[170]f4$:[152]1,ll$
  174. 1830 [141]3290:ll$[178]ll$[170]"den, "[170]fa$:[152]1,ll$
  175. 1840 [152]1
  176. 1850 [141]3290:[152]1,ll$;"(NULL)to.(NULL)r.: ";f5$
  177. 1860 [141]3290:[152]1,ll$;"chr$eldinstitut : "
  178. 1870 [141]3290:[152]1,ll$;f6$
  179. 1880 [141]3290:[152]1,ll$;"peekankleitzahl : ";f7$
  180. 1890 [141]3290:[152]1,ll$;"(NULL)elefon: ";f8$
  181. 1900 [152]1,"     "a1$
  182. 1910 [152]1,"     "a2$
  183. 1920 [152]1,"     "a3$
  184. 1930 [152]1,a4$
  185. 1940 [152]1
  186. 1950 [152]1,"peeketrifft: ";a5$
  187. 1960 [152]1
  188. 1970 [152]1,"atnls atnnlage uebersende ich right$hnen ";f9$;" zum o.g. peekezug."
  189. 1980 [152]1:[152]1
  190. 1990 ll$[178]" atnrbeitsaufwand"
  191. 2000 lz[178]39:[141]3300:[152]1,ll$;"(NULL)reis stck/qm/lfm     (NULL)enge       chr$esamt"
  192. 2010 [129]xx[178]1[164]80:[152]1,"-";:[130]
  193. 2020 [152]1
  194. 2030 [129]x[178]1[164]z
  195. 2040 [139]c$(x,3)[179][177]""[167]z1[178]z1[170]2:[137]3190
  196. 2050 [139]z1[178]67[167]:z1[178]0:[141]2650
  197. 2060 [139]z1[177]67[167]:z1[178]1:[141]2650
  198. 2070 [152]1,c$(x,1):[141]2620
  199. 2080 [152]1,c$(x,2):[141]2620
  200. 2090 [130]x
  201. 2100 [139]z1[177][178]60[167][141]2650
  202. 2110 lz[178]67:ll$[178]" ":[141]3300:[152]1,ll$;"------------"
  203. 2120 a[178]gs:[141]2320
  204. 2130 gs$[178]v1$
  205. 2140 gz[178]gs[172]0.14[170]0.005:gy[178]gz[170]gs
  206. 2150 a[178]gz:[141]2320
  207. 2160 gz$[178]v1$
  208. 2170 a[178]gy:[141]2320
  209. 2180 gy$[178]v1$
  210. 2190 lz[178]66:ll$[178]" ":[141]3300:[152]1,ll$;gs$;z$
  211. 2200 lz[178]67:ll$[178]" ":[141]3300:[152]1,ll$;"------------"
  212. 2210 lz[178]55:ll$[178]" ":[141]3300:[152]1,ll$;"+ 14% (NULL)(NULL)(NULL)t ";gz$;z$
  213. 2220 lz[178]67:ll$[178]" ":[141]3300:[152]1,ll$;"------------"
  214. 2230 lz[178]66:ll$[178]" ":[141]3300:[152]1,ll$;gy$;z$
  215. 2240 lz[178]67:ll$[178]" ":[141]3300:[152]1,ll$;"============"
  216. 2250 [152]1,"(NULL)it freundlichen chr$ruessen"
  217. 2260 [152]1:[152]1
  218. 2270 [160]1
  219. 2280 [153]h$:[153]"(NULL)ollen (NULL)ie noch einen str$ruck j/n";:[158]49152:[133]q$
  220. 2290 [139]q$[179][177]"j"[175]q$[179][177]"n"[167]2280
  221. 2300 [139]q$[178]"j"[167][137]1770
  222. 2310 [137]220
  223. 2320 [143]"********************************
  224. 2330 rem"*aufrunden und komma einfuegen *
  225. 2340 [143]"********************************
  226. 2350 b=int((a+0.005)*100)
  227. 2360 v2$="       "+str$(b)
  228. 2370 v2$=right$(v2$,9)
  229. 2380 v1$=mid$(v2$,1,7)+","+mid$(v2$,8,2)
  230. 2390 return
  231. 2400 close3
  232. 2410 open4,8,2,"@:firmendaten,s,w"
  233. 2420 print#4,f1$
  234. 2430 print#4,f2$
  235. 2440 print#4,f3$
  236. 2450 print#4,f4$
  237. 2460 print#4,f5$
  238. 2470 print#4,f6$
  239. 2480 print#4,f7$
  240. 2490 print#4,f8$
  241. 2500 close4
  242. 2510 open3,8,2,"textdaten,l,"+chr$(88):goto1410
  243. 2520 open4,8,3,"firmendaten,s,r"
  244. 2530 input#4,f1$
  245. 2540 input#4,f2$
  246. 2550 input#4,f3$
  247. 2560 input#4,f4$
  248. 2570 input#4,f5$
  249. 2580 input#4,f6$
  250. 2590 input#4,f7$
  251. 2600 input#4,f8$
  252. 2610 close4:goto1410
  253. 2620 z1=z1+1
  254. 2630 ifz1<=66thenreturn
  255. 2640 z1=3
  256. 2650 forq=1to6
  257. 2660 print#1
  258. 2670 nextq
  259. 2680 i=i+1
  260. 2690 print#1,"                                   - ";i;" -"
  261. 2700 print#1
  262. 2710 return
  263. 2720 rem"*************************
  264. 2730 [143]"* textdaten speichern   *
  265. 2740 rem"*************************
  266. 2750 hb[178][181](sl[173]256)
  267. 2760 lb[178]sl[171]hb[172]256
  268. 2770 t$[178]t$[170]ff$:t$[178][200](t$,40)
  269. 2780 t1$[178]t1$[170]ff$:t1$[178][200](t1$,40)
  270. 2790 p$[178]ff$[170]p$:p$[178][201](p$,7)
  271. 2800 rc$[178]t$[170]t1$[170]p$
  272. 2810 [152]2,"p"[170][199](2)[170][199](lb)[170][199](hb)[170][199](1)
  273. 2820 [152]3,rc$
  274. 2830 [142]
  275. 2840 [143]"**********************
  276. 2850 rem"*  textdaten lesen   *
  277. 2860 [143]"**********************
  278. 2870 hb=int(sl/256)
  279. 2880 lb=sl-hb*256
  280. 2890 print#2,"p"+chr$(2)+chr$(lb)+chr$(hb)+chr$(1)
  281. 2900 input#3,rc$
  282. 2910 ifasc(rc$)=255thenaa$="leer":return
  283. 2920 aa$=mid$(rc$,1,40)
  284. 2930 ab$=mid$(rc$,41,40)
  285. 2940 ac$=mid$(rc$,81,7)
  286. 2950 return
  287. 2960 rem"**** eingabelimit ******
  288. 2970 [153]h$
  289. 2980 [153]"onatnb (NULL)chluessel:";:[158]49152:[133]a
  290. 2990 [139]a[179]2[176]a[177]sm[167]2980
  291. 3000 [153]"onpeekis zu (NULL)chluessel";:[158]49152:[133]e
  292. 3010 [139]e[179]2[176]a[177]sm[167]3000
  293. 3020 [142]
  294. 3030 [153]h$;"str$atensatz nicht vorhanden":[129]x[178]1[164]1000:[130]:[137]880
  295. 3040 [143]"******************************
  296. 3050 rem"*textdatei einrichten/erweit.*
  297. 3060 [143]"******************************
  298. 3070 printh$:print"wieviel [211]aetze soll die [196]atei enthalten "
  299. 3080 print"oder ende 'e' ";:sys49152:inputsm$
  300. 3090 ifsm$="e"then220
  301. 3100 sm=val(sm$)
  302. 3110 ifsm<2orsm>1800then3070
  303. 3120 hb=int(sm/256)
  304. 3130 lb=sm-hb*256
  305. 3140 print#2,"p"+chr$(2)+chr$(lb)+chr$(hb)+chr$(1)
  306. 3150 print#3,chr$(255)
  307. 3160 print#2,"p"+chr$(2)+chr$(01)+chr$(0)+chr$(1)
  308. 3170 print#3,sm
  309. 3180 goto220
  310. 3190 print#1,c$(x,3)
  311. 3200 zz=len(c$(x,3))
  312. 3210 fory=1tozz
  313. 3220 print#1,"-";
  314. 3230 nexty
  315. 3240 print#1,chr$(141)
  316. 3250 goto2090
  317. 3260 :
  318. 3270 rem"* formatieren *
  319. 3280 [143]"***************
  320. 3290 lz=54:ll$=" "
  321. 3300 iflen(ll$)>=lzthen
  322. 3310 ll$=ll$+" "
  323. 3320 iflen(ll$)<=lzthen3310
  324. 3330 return
  325.