Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 241158 (2594)
  Suchen
 Zurück zur Übersicht
 AutorThema: filtern mit dbf
Friedhelm Werner
Datum:07.05.02 21:59 Antwortenals Email verschicken (Friedhel-Werner@nebucadnzi.com) 


hallo profaner
ich habe eine dbf datei mit den feldern (artikelnummer und text und preis) jetz will ich alle artikel raus filtern die die artikel nunmmer 0815 haben wie kann ich das machen ????


carlo keil
Datum:07.05.02 22:42 Antwortenals Email verschicken (carlo.keil@web.de) 


Hallo Friedhelm,

wegen fortgeschrittener Stunde nur ein Kurzfassung:
1. Gewünschten Index erzeugen und in Gebrauch nehmen.
2. Nach dem Suchbegriff suchen lassen.
3. Unter Verwendung des Index zum nächsten Satz blättern.
4. Punkt 3 solange wiederholen, wie der Suchbegriff passt.

HTH
Carlo


Bernd Haase
Datum:08.05.02 09:42 Antwortenals Email verschicken (info@ebs-haase.de) 


Hallo Friedhelm !

Profan bietet leider keine Set Filter Funktion wie unter Dbase.
Aber mit ODBC- und SQL- Zugriff gelibgt Dir eine excellente Auswahl.

Gruß Bernd


Jürgen K.
Datum: 08.05.02 15:21 Antwortenals Email verschicken  


Hallo !
Es gibt auch bei DBase normalerweise keinen echten Filter.
Bei DBase ohne Index wird der Befehl LOCATE in eine Funktion
umgeleitet.
z.B: Locate for Kundenname = "PROFAN" .and. Version = "6"

Deshalb sollte man gleiches in Profan schreiben können:

z.B:

// Diese Funktion für Strings läßt sich natürlich auch für
// Zahlen umsetzen

Def @DBGETFILTER$(2) @If( Mid$(@DBGet$(@$(1)),01,@Len($(2)))=Mid$(@$(2),01,@Len($(2))) , @DBGet$(@$(1)) ,"")

Cls
Print "MY Filter"
@DBOPEN(#1,"Test.dbf")
DBUSE(#1)

WhileLoop 1,10

Print @DBGETFILTER$("KUNDENNAME","P")
Print @DBGETFILTER$("KUNDENNAME","Pr")
Print @DBGETFILTER$("KUNDENNAME","Pro")
Print @DBGETFILTER$("KUNDENNAME","Profa")

@dbGo("NEXT")
endWhile
WaitInput
DBCLOSE(#1)
Print "Ende"
End

MfG Jürgen



 Zurück zur Übersicht