Autor | Thema: filtern mit dbf | | Datum:07.05.02 21:59 
(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 ????
|
| | Datum:07.05.02 22:42 
(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
|
| | Datum:08.05.02 09:42 
(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
|
| | Datum: 08.05.02 15:21 
| |
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
|
|
|