REM ****************** SUBPROGRAMM MODUL SUCHEN ********************* suchen.feldnamen.label: print : print in$;" FELDNAMEN: ";ni$ : print for x=1 to felder print x;" ... ";feldname$(x) next print input "Bitte Nummer des Feldnamens eingeben, in dem gesucht werden soll: ";suchzahl if suchzahl<1 or suchzahl>felder then print uzu$ : for x=1 to 500 : next : goto menu: print print "Der folgende Suchbegriff wird nur dann in den Datensštzen erkannt," print "wenn er auch dort exakt gleich geschrieben wurde ! " : print print "* erlaubt ein Suchen auf Grund der Lšnge (z.B.: **** = und ) " print input "Zu suchenden Begriff eingeben (z.B.:Frau) ";suchbeg$ dim wild(len(suchbeg$)) for x=1 to len(suchbeg$) if mid$(suchbeg$,x,1)="*" then wild(x)=1 : else wild(x)=0 next : wildsum=0 for x=1 to len(suchbeg$) : wildsum=wildsum+wild(x) : next if wildsum=len(suchbeg$) then wildchr=1 else wildchr=0 open filespec$ AS sourcefilenum satz=-2 suchen.fortsetzen.label: while not suchbeg$=feldinhalt$(suchzahl) if dateiende=1 then dateiende=0 : gefunden=0 : RETURN if wildchr=1 AND LEN(feldinhalt$(suchzahl))=wildsum then gefunden=1 : RETURN gosub satzvon.disk: satz=satz+1 wend gefunden=1 : RETURN REM ------------------------------------------------------------------ rem ************************************** SATZSUCHEN MODUL ********** satzsuch.label: print cls$;line$ print in$;tab(20);"Einen bestimmten Datensatz suchen:";tab(83);ni$ print line$:print gosub filestart: sourcefilenum=1 satzsuch.label.1: gosub suchen.feldnamen.label: if gefunden=0 then goto nichtgefunden.label: if gefunden=1 then goto gefunden.label: goto menu: rem ===================== nichtgefunden.label: close 1 : dateiende=0 print : print line$ print in$;tab(20);" Keinen Satz mit diesem Inhalt gefunden ! ";tab(83);bel$ print tab(10);"Nocheinmal versuchen ?...< N > oder < M >...zurueck zum Menue"; \ : print tab(81);ni$ : print line$ ngl.1: k%=inkey if k%=77 OR k%=109 then goto menu: if k%=78 OR k%=110 then goto satzsuch.label.1: goto ngl.1: rem ======================= gefunden.label: if gefunden=0 then goto nichtgefunden.label: gosub satzauf.moni: print:print line$ print in$;"...Satz drucken * ...nocheinmal * ...weitersuchen * "; \ : print "...zum Menue";tab(83);ni$ print line$ ngl.2: k%=inkey if k%=77 or k%=109 then close 1: dateiende=0 : goto menu: if k%=78 or k%=110 then close 1: dateiende=0 : goto satzsuch.label.1: if k%=87 or k%=119 then feldinhalt$(suchzahl)=suchbeg$+"X" : satz=satz-1 : \ gosub suchen.fortsetzen.label: : goto gefunden.label: if k%=68 or k%=100 then gosub satzauf.drucker: goto ngl.2: rem ------------------------------------------------------------------ 68 or k%=100 then gosub satzauf.drucker: goto ngl.2: rem ----------