home *** CD-ROM | disk | FTP | other *** search
/ M.u.C.S. Disc 2000 / MUCS2000.iso / sigisoft / paket__1 / stamm.bas < prev   
BASIC Source File  |  1997-10-09  |  12KB  |  251 lines

  1. 1 WIDTH 80
  2. 5 LOCATE 20,1: PRINT string$(80,45)
  3. 6 LOCATE 21,1: PRINT "             DATENDISKETTE IN LAUFWERK :                                        "
  4. 7 LOCATE 22,1: PRINT string$(80,45)
  5. 8 ZZ$="": R=21: S=42: L=1: PK%=1: GOSUB 20: B$=ZZ$
  6. 9 IF B$=CHR$(13) THEN BEEP: GOTO 8
  7. 10 IF B$="A" OR B$="a" OR B$="B" OR B$="b" OR B$="C" OR B$="c" or B$="D" or b$="d" THEN 12
  8. 11 BEEP: GOSUB 13: GOTO 8
  9. 12 GOTO 100
  10. 13 LOCATE 21,50: PRINT "EINGABE VON A,B,C ODER D": RETURN
  11. 20 ZZ$=LEFT$(ZZ$,L):ZZ$=ZZ$+STRING$(L-LEN(ZZ$),95):Z2=0:Y=1
  12. 21 LOCATE R,S:PRINT ZZ$;
  13. 22 locate R,S+Y-1
  14. 23 Z$=INKEY$: IF Z$="" THEN 23 ELSE Z=ASC(Z$): Z1=0: IF Z=0 THEN Z1=ASC(RIGHT$(Z$,1))
  15. 24 IF Z<>13 THEN 28 ELSE IF Z2 >0 THEN 23
  16. 25 IF Y=1 THEN ZZ$=CHR$(13): RETURN
  17. 26 IF RIGHT$(ZZ$,1)="_" THEN ZZ$=LEFT$(ZZ$,INSTR(ZZ$,"_")-1)
  18. 27 RETURN
  19. 28 IF Z<>0 THEN 48
  20. 29 IF Z1<>71 THEN 31 ELSE IF Y=1 OR Z2 THEN 23
  21. 30 Y=1:GOTO 22
  22. 31 IF Z1<>75 THEN 33 ELSE IF Y=1 OR Z2 THEN 23
  23. 32 Y=Y-1:GOTO 22
  24. 33 rem
  25. 34 Y=Y+1:GOTO 22
  26. 35 IF Z1<>79 THEN 39 ELSE IF Y>L OR Z2 THEN 23
  27. 36 IF MID$(ZZ$,Y,1)="_" THEN 23
  28. 37 Y=Y+1
  29. 38 IF MID$(ZZ$,Y,1)="_" THEN 22 ELSE 37
  30. 39 IF Z1<>82 THEN 42 ELSE IF RIGHT$(ZZ$,1)<>"_" THEN 23
  31. 40 IF (Z2=0 AND MID$(ZZ$,Y,1)="_") OR Y>L THEN 23
  32. 41 ZZ$=LEFT$(ZZ$,Y-1)+"_"+MID$(ZZ$,Y,L-Y):Z2=Z2+1:GOTO 21
  33. 42 IF Z1<>83 THEN 44 ELSE IF (Z2=0 AND MID$(ZZ$,Y,1)="_") OR Y>L THEN 23
  34. 43 GOSUB 56:ZZ$=LEFT$(ZZ$,Y-1)+MID$(ZZ$,Y+1)+"_":GOTO 21
  35. 44 IF Z1<>117 THEN 46 ELSE IF (Z2=0 AND MID$(ZZ$,Y,1)="_") OR Y>L THEN 23
  36. 45 GOSUB 56:ZZ$=LEFT$(ZZ$,Y-1)+STRING$(L-Y+1,95):GOTO 21
  37. 46 IF Z1<>119 THEN 23 ELSE IF Y=1 THEN 23
  38. 47 ZZ$=MID$(ZZ$,Y)+STRING$(Y-1,95):Y=1:GOTO 21
  39. 48 IF Z<>8 THEN 50 ELSE IF Y=1 THEN 23
  40. 49 ZZ$=LEFT$(ZZ$,Y-2)+MID$(ZZ$,Y)+"_":Y=Y-1:GOTO 21
  41. 50 IF Z<>27 THEN 51 ELSE ZZ$=STRING$(L,95):Y=1:Z2=0: GOTO 21
  42. 51 IF Z=95 OR Y>L THEN 23
  43. 52 ON PK% GOTO 55,53,54
  44. 53 IF Z<48 OR Z>58 THEN 23 ELSE 55
  45. 54 IF Z<>106 AND Z<>110 THEN 23
  46. 55 IF Z=44 THEN 23 ELSE GOSUB 56:ZZ$=LEFT$(ZZ$,Y-1)+Z$+MID$(ZZ$,Y+1):PRINT Z$;:Y=Y+1:GOTO 22
  47. 56 IF Z2 THEN Z2=Z2-1
  48. 57 RETURN
  49. 60 CLS
  50. 61 LOCATE 2,1: PRINT string$(80,45)
  51. 62 LOCATE 3,1: PRINT SPACE$(31)+"S T A M M D A T E N        "+SPACE$(22)
  52. 63 LOCATE 4,1: PRINT SPACE$(26)+"(c) 1991 by Siegfried Hübner"+SPACE$(26)
  53. 64 LOCATE 5,1: PRINT string$(80,45): RETURN
  54. 88 LOCATE 20,1: PRINT SPACE$(80): LOCATE 21,1: PRINT SPACE$(80): LOCATE 22,1: PRINT SPACE$(80): RETURN
  55. 90 LOCATE 20,1: PRINT string$(80,45)
  56. 91 LOCATE 21,1: PRINT "                        EINGABE ZWINGEND ERFORDERLICH                           "
  57. 92 LOCATE 22,1: PRINT string$(80,45): RETURN
  58. 95 FOR T=1 TO 3: LOCATE 19+T,1: PRINT SPACE$(80): NEXT T: RETURN
  59. 100 GOSUB 60
  60. 105 LOCATE 10,27: PRINT "[ 1 ] NEU EINGABE DER DATEN"
  61. 106 LOCATE 12,27: PRINT "[ 2 ] VERÄNDERN   DER DATEN"
  62. 107 LOCATE 14,27: PRINT "[ 3 ] SPEICHERN   DER DATEN"
  63. 108 LOCATE 16,27: PRINT "[ 4 ] AUSDRUCK    DER DATEN"
  64. 110 LOCATE 20,1: PRINT string$(80,45)
  65. 111 LOCATE 21,1: PRINT "      HAUPTMENÜ =  H                                         ABBRUCH =  A ";TAB(81)
  66. 112 LOCATE 22,1: PRINT string$(80,45)
  67. 120 E$=INKEY$: IF E$="" THEN 120
  68. 121 IF E$="1" THEN GOSUB 130: GOTO 200
  69. 122 IF E$="2" THEN GOSUB 140: GOTO 400
  70. 123 IF E$="3" THEN GOSUB 145: GOTO 110
  71. 124 IF E$="A" OR E$="a" THEN 500
  72. 125 IF E$="H" OR E$="h" THEN 600
  73. 126 IF E$="4" THEN GOSUB 140: GOTO 700
  74. 127 GOTO 120
  75. 130 F1$="": F2$="":F3$="": F4$="": F5$="": F6$="": F7$="": F8$="": F9$="": RETURN
  76. 140 IF F1$="" OR F1$="*" THEN GOSUB 310: RETURN
  77. 141 RETURN
  78. 145 IF F1$="" THEN 147
  79. 146 GOSUB 300: GOTO 110
  80. 147 LOCATE 20,1: PRINT string$(80,45)
  81. 148 LOCATE 21,1: PRINT "            NOCH KEINE STAMMDATEN VORHANDEN   BELIEBIGE TASTE                   "
  82. 149 LOCATE 22,1: PRINT string$(80,45)
  83. 150 E$=INKEY$: IF E$="" THEN 150
  84. 151 GOTO 110
  85. 200 GOSUB 60
  86. 201 LOCATE 7,5: PRINT "STAMMDATEN - EINGABE         IM ERSTEN FELD MIT * ZUM MENÜ BEI FEHLEINGABE"
  87. 202 GOSUB 88: GOSUB 205: GOSUB 215: GOTO 229
  88. 205 LOCATE 10,5: PRINT "[1] FIRMENNAME   :                           "
  89. 206 LOCATE 11,5: PRINT "[2] ZUSATZNAME   :                           "
  90. 207 LOCATE 12,5: PRINT "[3] STRASSE      :                           "
  91. 208 LOCATE 13,5: PRINT "[4] PLZ / ORT    :                           "
  92. 209 LOCATE 14,5: PRINT "[5] TELEFON      :                           "
  93. 210 LOCATE 15,5: PRINT "[6] BANKNAME     :                           "
  94. 211 LOCATE 16,5: PRINT "[7] BANKORT      :                           "
  95. 212 LOCATE 17,5: PRINT "[8] KONTO-NUMMER :                           "
  96. 213 LOCATE 18,5: PRINT "[9] BANKLEITZAHL :                           ": RETURN
  97. 215 LOCATE 10,50: PRINT STRING$(31,45): LOCATE 11,50:PRINT CHR$(45)+SPACE$(29)+CHR$(45)
  98. 216 LOCATE 12,50: PRINT CHR$(45)+SPACE$(29)+CHR$(45)
  99. 217 LOCATE 13,50: PRINT CHR$(45)+SPACE$(29)+CHR$(45)
  100. 218 LOCATE 14,50: PRINT CHR$(45)+"   JEDE EINGABE BITTE MIT    "+CHR$(45)
  101. 219 LOCATE 15,50: PRINT CHR$(45)+"     RETURN BESTÄTIGEN.      "+CHR$(45)
  102. 220 LOCATE 16,50: PRINT CHR$(45)+SPACE$(29)+CHR$(45)
  103. 221 LOCATE 17,50: PRINT CHR$(45)+SPACE$(29)+CHR$(45)
  104. 222 LOCATE 18,50: PRINT CHR$(45)+SPACE$(29)+CHR$(45)
  105. 223 LOCATE 19,50: PRINT STRING$(31,45): RETURN
  106. 229 ZZ$=""
  107. 230 R=10: S=24: L=24: PK%=1: GOSUB 20: F1$=ZZ$: IF F1$="*" THEN F1$="": GOTO 100
  108. 231 IF F1$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 229
  109. 232 GOSUB 95: IF PP=1 THEN RETURN
  110. 233 ZZ$=""
  111. 235 R=11: S=24: L=24: PK%=1: GOSUB 20: F2$=ZZ$
  112. 236 IF F2$=CHR$(13) THEN F2$="-"
  113. 237 IF PP=1 THEN RETURN
  114. 238 ZZ$=""
  115. 240 R=12: S=24: L=24: PK%=1: GOSUB 20: F3$=ZZ$
  116. 241 IF F3$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 238
  117. 242 GOSUB 95: IF PP=1 THEN RETURN
  118. 243 ZZ$=""
  119. 245 R=13: S=24: L=24: PK%=1: GOSUB 20: F4$=ZZ$
  120. 246 IF F4$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 243
  121. 247 GOSUB 95: IF PP=1 THEN RETURN
  122. 248 ZZ$=""
  123. 250 R=14: S=24: L=15: PK%=1: GOSUB 20: F5$=ZZ$
  124. 251 IF F5$=CHR$(13) THEN F5$="-"
  125. 252 IF PP=1 THEN RETURN
  126. 253 ZZ$=""
  127. 255 R=15: S=24: L=20: PK%=1: GOSUB 20: F6$=ZZ$
  128. 256 IF F6$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 253
  129. 257 GOSUB 95: IF PP=1 THEN RETURN
  130. 258 ZZ$=""
  131. 260 R=16: S=24: L=20: PK%=1: GOSUB 20: F7$=ZZ$
  132. 261 IF F7$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 258
  133. 262 GOSUB 95: IF PP=1 THEN RETURN
  134. 263 ZZ$=""
  135. 265 R=17: S=24: L=15: PK%=1: GOSUB 20: F8$=ZZ$
  136. 266 IF F8$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 263
  137. 267 GOSUB 95: IF PP=1 THEN RETURN
  138. 268 ZZ$=""
  139. 270 R=18: S=24: L=10: PK%=1: GOSUB 20: F9$=ZZ$
  140. 271 IF F9$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 268
  141. 272 GOSUB 95: IF PP=1 THEN RETURN
  142. 275 LOCATE 20,1: PRINT string$(80,45)
  143. 276 LOCATE 21,1: PRINT " KORREKTUR = ZEILE 1 - 9   NEUBEGINN =  N    SPEICHERN =  S    HAUPTMENÜ =  H   "
  144. 277 LOCATE 22,1: PRINT string$(80,45)
  145. 278 PP=0
  146. 280 E$=INKEY$: IF E$="" THEN 280
  147. 281 IF E$="N" OR E$="n" THEN GOSUB 130: GOTO 201
  148. 282 IF E$="S" OR E$="s" THEN GOSUB 300: GOTO 275
  149. 283 IF E$="H" OR E$="h" THEN 100
  150. 284 IF E$="1" THEN GOSUB 295: ZZ$=F1$: GOSUB 230: GOTO 275
  151. 285 IF E$="2" THEN GOSUB 295: ZZ$=F2$: GOSUB 235: GOTO 275
  152. 286 IF E$="3" THEN GOSUB 295: ZZ$=F3$: GOSUB 240: GOTO 275
  153. 287 IF E$="4" THEN GOSUB 295: ZZ$=F4$: GOSUB 245: GOTO 275
  154. 288 IF E$="5" THEN GOSUB 295: ZZ$=F5$: GOSUB 250: GOTO 275
  155. 289 IF E$="6" THEN GOSUB 295: ZZ$=F6$: GOSUB 255: GOTO 275
  156. 290 IF E$="7" THEN GOSUB 295: ZZ$=F7$: GOSUB 260: GOTO 275
  157. 291 IF E$="8" THEN GOSUB 295: ZZ$=F8$: GOSUB 265: GOTO 275
  158. 292 IF E$="9" THEN GOSUB 295: ZZ$=F9$: GOSUB 270: GOTO 275
  159. 294 GOTO 280
  160. 295 PP=1: LOCATE 20,1: PRINT string$(80,45)
  161. 296 LOCATE 21,1: PRINT "             MINDESTENS 1 ZEICHEN KORRIGIEREN UND RETURN DRÜCKEN                "
  162. 297 LOCATE 22,1: PRINT string$(80,45): RETURN
  163. 300 NA$=B$+":stamm.dat": GOSUB 315
  164. 301 OPEN NA$ FOR OUTPUT AS #1
  165. 302 PRINT #1,F1$: PRINT #1,F2$: PRINT #1,F3$: PRINT #1,F4$: PRINT #1,F5$: PRINT #1,F6$: PRINT #1,F7$: PRINT #1,F8$: PRINT #1,F9$
  166. 303 CLOSE #1: RETURN
  167. 310 NA$=B$+":stamm.dat": ON ERROR GOTO 325 : GOSUB 320
  168. 311 OPEN NA$ FOR INPUT AS #1
  169. 312 INPUT #1,F1$,F2$,F3$,F4$,F5$,F6$,F7$,F8$,F9$
  170. 313 CLOSE #1: GOSUB 1010: RETURN
  171. 315 LOCATE 20,1: PRINT string$(80,45)
  172. 316 LOCATE 21,1: PRINT "                       STAMMDATEN WERDEN ABGESPEICHERT                          "
  173. 317 LOCATE 22,1: PRINT string$(80,45): RETURN
  174. 320 LOCATE 20,1: PRINT string$(80,45)
  175. 321 LOCATE 21,1: PRINT "                         STAMMDATEN WERDEN EINGELESEN                           "
  176. 322 LOCATE 22,1: PRINT string$(80,45): RETURN
  177. 325 IF ERR=58 AND ERR=53 OR ERR=1230 THEN GOTO 330
  178. 326 rem
  179. 330 LOCATE 20,1: PRINT string$(80,45)
  180. 331 LOCATE 21,1: PRINT "          NOCH KEINE STAMMDATEI AUF DISK ANGELEGT   BELIEBIGE TASTE             "
  181. 332 LOCATE 22,1: PRINT string$(80,45)
  182. 335 E$=INKEY$: IF E$="" THEN 335
  183. 336 GOTO 100
  184. 380 LOCATE 10,24: PRINT F1$: LOCATE 11,24: PRINT F2$: LOCATE 12,24: PRINT F3$: LOCATE 13,24: PRINT F4$: LOCATE 14,24: PRINT F5$
  185. 381 LOCATE 15,24: PRINT F6$: LOCATE 16,24: PRINT F7$: LOCATE 17,24: PRINT F8$: LOCATE 18,24: PRINT F9$
  186. 383 RETURN
  187. 400 GOSUB 60
  188. 401 LOCATE 7,5: PRINT "STAMMDATEN - AUSGABE"
  189. 402 GOSUB 205: GOSUB 380
  190. 410 LOCATE 20,1: PRINT string$(80,45)
  191. 411 LOCATE 21,1: PRINT " KORREKTUR = ZEILE 1 - 9                     SPEICHERN =  S    HAUPTMENÜ =  H   "
  192. 412 LOCATE 22,1: PRINT string$(80,45)
  193. 413 PP=0
  194. 414 E$=""
  195. 415 E$=INKEY$: IF E$="" THEN 415
  196. 416 IF E$="S" OR E$="s" THEN GOSUB 300: GOTO 275
  197. 417 IF E$="H" OR E$="h" THEN 100
  198. 418 IF E$="1" THEN GOSUB 295: ZZ$=F1$: GOSUB 230: GOTO 410
  199. 419 IF E$="2" THEN GOSUB 295: ZZ$=F2$: GOSUB 235: GOTO 410
  200. 420 IF E$="3" THEN GOSUB 295: ZZ$=F3$: GOSUB 240: GOTO 410
  201. 421 IF E$="4" THEN GOSUB 295: ZZ$=F4$: GOSUB 245: GOTO 410
  202. 422 IF E$="5" THEN GOSUB 295: ZZ$=F5$: GOSUB 250: GOTO 410
  203. 423 IF E$="6" THEN GOSUB 295: ZZ$=F6$: GOSUB 255: GOTO 410
  204. 424 IF E$="7" THEN GOSUB 295: ZZ$=F7$: GOSUB 260: GOTO 410
  205. 425 IF E$="8" THEN GOSUB 295: ZZ$=F8$: GOSUB 265: GOTO 410
  206. 426 IF E$="9" THEN GOSUB 295: ZZ$=F9$: GOSUB 270: GOTO 410
  207. 428 GOTO 415
  208. 500 LOCATE 20,1: PRINT string$(80,45)
  209. 501 LOCATE 21,1: PRINT "                                SICHER  (J/N)  ?                                "
  210. 502 LOCATE 22,1: PRINT string$(80,45)
  211. 505 E$=INKEY$: IF E$="" THEN 505
  212. 506 IF E$="j" OR E$="J" THEN CLS: END
  213. 507 GOTO 110
  214. 600 LOCATE 20,1: PRINT string$(80,45)
  215. 601 LOCATE 21,1: PRINT "                           HAUPTMENÜ WIRD GELADEN                               "
  216. 602 LOCATE 22,1: PRINT string$(80,45)
  217. 603 RUN  "MENUE"
  218. 700 LOCATE 20,1: PRINT string$(80,45)
  219. 701 LOCATE 21,1: PRINT "          DRUCKER EINSCHALTEN + TASTE D       ABBRUCH OHNE DRUCK = H            "
  220. 702 LOCATE 22,1: PRINT string$(80,45)
  221. 705 E$=INKEY$: IF E$="" THEN 705
  222. 706 IF E$="D" OR E$="d" THEN GOSUB 800: GOTO 710
  223. 707 IF E$="H" OR E$="h" THEN 110
  224. 708 GOTO 705
  225. 710 LOCATE 20,1: PRINT string$(80,45)
  226. 711 LOCATE 21,1: PRINT "                              DRUCKER IN BETRIEB                                "
  227. 712 LOCATE 22,1: PRINT string$(80,45)
  228. 715 LPRINT TAB(5);CHR$(14);"STAMMDATEN VON ";F1$: LPRINT " "
  229. 716 LPRINT TAB(5)"FIRMENNAME     : ";F1$
  230. 717 LPRINT TAB(5)"ZUSATZNAME     : ";F2$
  231. 718 LPRINT TAB(5)"STRASSE        : ";F3$
  232. 719 LPRINT TAB(5)"PLZ / ORT      : ";F4$
  233. 720 LPRINT TAB(5)"TELEFON        : ";F5$
  234. 721 LPRINT TAB(5)"BANKVERBINDUNG : ";F6$;" ";F7$
  235. 722 LPRINT TAB(5)"KONTO-NUMMER   : ";F8$
  236. 723 LPRINT TAB(5)"BANKLEITZAHL   : ";F9$
  237. 725 CLOSE: GOTO 100
  238. 800 ON ERROR GOTO 803
  239. 801 RETURN
  240. 802 OPEN "LPT1:" FOR OUTPUT AS #1
  241. 803 IF ERR=27 THEN 810
  242. 804 rem
  243. 810 LOCATE 20,1: PRINT string$(80,45)
  244. 811 LOCATE 21,1: PRINT "         KEIN DRUCKER EINGESCHALTET   BELIEBIGE TASTE DRÜCKEN                   "
  245. 812 LOCATE 22,1: PRINT string$(80,45)
  246. 815 E$=INKEY$: IF E$="" THEN 815
  247. 816 GOTO 100
  248. 1010 IF F1$="" THEN 330
  249. 1011 RETURN
  250.  
  251.