Paradoxdaten lesen UND schreiben

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
starkard
Beiträge: 87
Registriert: Mi 31. Okt 2007, 10:44

Beitrag von starkard »

Hab endlich die aufsteigende Sortierung im DBGrid hinbekommen. Danke für den Tipp mit dem Index.:lol:

Thema ODBC: Heisst das jetzt ich kann doch SQL für meine Dbase nehmen?? naja egal, zu spät

Filtern ist schon was anderes. Hab endlich eine gute Onlinhilfe gefunden und folgendes ausprobiert:
(Da hier böse Worter verboten sind, versuch ich mal sachlich zu bleiben)

Dbf1.Filter := 'ZOPFBEZ > 50'; //Geht super

AHA. dann nehm ich jetzt doch, wie gewollt, mein Editfeld zwecks dynamisches Filtern ->

Dbf1.Filter := 'ZOPFBEZ > ' + QuotedStr(DBEdit1.Text); //Geht nicht so super

Was mache ich falsch??

P.S: Danke nochmal für euer Bemühen. Vielleicht sollte man den Thread in "starkard versucht Lazarus" umbenennen?! :wink:

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Was mache ich falsch??
Steht in der Fehlermeldung.
Warum nimmst du Quotedstr ? Oben (bei "geht super") nimmst dus auch nicht.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

starkard
Beiträge: 87
Registriert: Mi 31. Okt 2007, 10:44

Beitrag von starkard »

Ups sry für die lapidare Darstellung, aber ich mag die Fehlermeldung nicht mehr. :lol:

QuotedString nehme ich weil ich schon alles ausprobiert habe und es so in einem Bsp stand. Wenn ich z.B folgendes probiere:
Dbf1.Filter := 'ZOPFBEZ > DBEdit1.Text';

kommt:
Project raised Exception class 'EDbfError'

Vermute dass es mit meinem Feld ZOPFBEZ zusammenhängt, da es ein Integer ist.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6766
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Christian hat geschrieben:
BDE Probleme hin und her, du hast aber damit einen Wrapper gehabt, wo du immer mit einen Subset von SQL zugreifen hast können. Das war das Geniale daran.
Und wo ist jetzt der Unterscheid zu ODBC ?
Nativ unterstützt, ohne ODBC.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Nativ unterstützt, ohne ODBC.
Lol, nativ ? Das wird vom ODBC genauso emuliert wie die BDE das emuliert. Dbf kann nativ nicht mit SQL angesprochen werden. Da steht da und da n SQL Parser dazwischen. kein Unterschied.
Dbf1.Filter := 'ZOPFBEZ > DBEdit1.Text';
Wolln wir mal wer findet den Fehler spieln ?
Im Fehlertext steht übrigends "Index based on unknown Field DBEdit1.Text".

Es könnte auch helfen wenn du bei dir strings in der IDE im Quelltext mit einfärben lässt ;)

Ansonsten versuchs mal so ;)

Dbf1.Filter := 'ZOPFBEZ > '+DBEdit1.Text;
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6766
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Christian hat geschrieben:
Nativ unterstützt, ohne ODBC.
Lol, nativ ? Das wird vom ODBC genauso emuliert wie die BDE das emuliert. Dbf kann nativ nicht mit SQL angesprochen werden. Da steht da und da n SQL Parser dazwischen. kein Unterschied.
Aus der Sicht des Programmieres nativ, vor allen war es egal, welche Datenbank du genommen hast, das SQL war gleich. Und damals war es oft gar nicht so leicht einen passenden ODBC Treiber zu bekommen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

ODBC Treiber für Dbase, Paradox,Excel und Textdateien sind unter Windows immer mit vorinstalliert. Und dann ist wohl ODBC auch nativ, wenn du das so definierst. Funbktioniert auch um einiges fehlerfreier als die BDE.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6766
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Christian hat geschrieben:ODBC Treiber für Dbase, Paradox,Excel und Textdateien sind unter Windows immer mit vorinstalliert. Und dann ist wohl ODBC auch nativ, wenn du das so definierst. Funbktioniert auch um einiges fehlerfreier als die BDE.
Jetzt, mittlerweile. Zu Zeiten von WfW war ODBC schon fast Luxus, so rund um 1996 !
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Das ist 10 jahre her und 1996 gabs schon Windows 95 samt odbc. Führt das jetzt noch irgendwo hin ?
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

starkard
Beiträge: 87
Registriert: Mi 31. Okt 2007, 10:44

Beitrag von starkard »

Also bei mir schon! Ich habe herausgefunden, was bei mir nicht gefunzt hat, und möchte dies noch kurz zu besten geben, falls irgendwann jmd das selbe Problem haben sollte (was ich nicht glaube).

Hatte ja den Filter über ein DBEdit laufen lassen, was wiederum mit mein Datasource,DBGrid verbunden war. Filter wurde bei mir aus Testzwecken über ein Button aktiviert. Beim Klick wurde anscheinend versucht die Eingabe in meine Tabelle zu speichern (k.A. warum), was eine Exception auslöste. In meinem Buttonevent hatte ich erst das Dataset,Filter deaktiviert die Tabelle geschlossen, Filteranweisungen geschrieben und wieder alles geöffnet bzw. aktiviert.

Lösung:
Habe schliesslich festgestellt das ich lediglich den Filter nach der Filteranweisung auf true setzen muss. Mehr nicht! :oops:

Tja manchmal ist weniger mehr. Danke nochmal für eure Hilfe

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Macht irgendwie alles net so viel sinn und passt net zu dem code den du gepostet hast.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

Ich hab mir extra das Paradoxdataset geschrieben
Hast du auch mit den Paradox-Komponenten zu tun, die jetzt ins SVN aufgenommen wurden?

knight

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Nö, eigentlich schwachsinnig immer alles doppelt und dreifach zu machen aber naja.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Ich nehms zurpück aich dachte eig das is auch ne read only Komponente es hat nämlich zwischenzeitlich jemand schon mal genau das selbe wie ich gemacht. Aber das was du meinst basiert auf der pclib und die kann lesen und schreiben kannte ich vorher auch noch nicht. Nur schade das man nen SVN fpc dazu braucht.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten