AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ClientDataset Filtern
Thema durchsuchen
Ansicht
Themen-Optionen

ClientDataset Filtern

Ein Thema von Lemi2006 · begonnen am 6. Jul 2006 · letzter Beitrag vom 14. Okt 2008
Antwort Antwort
Seite 1 von 2  1 2      
Lemi2006

Registriert seit: 6. Jul 2006
Ort: Dresden
2 Beiträge
 
Delphi 7 Enterprise
 
#1

ClientDataset Filtern

  Alt 6. Jul 2006, 22:20
Datenbank: Interbase • Version: 7.5 • Zugriff über: ADO
Ich möchte gerne in einem ClientDataSet mit "Filter" Datensätze mit einer bestimmten
Zeichenkette an einer beliebigen Stelle filtern, also analog zu

SQL-Code:
SELECT * FROM [tabelle]
WHERE [spalte] LIKE '%[text]%'
bisher konnte ich aber nur nach Zeichenketten, die am Anfang stehen filtern

Delphi-Quellcode:

CDS.Filter := '[spalte]=''[text]*''';
CDS.Filtered := true;
mit

Delphi-Quellcode:

CDS.Filter := '[spalte]=''*[text]*''';
CDS.Filtered := true;
klappt es leider nicht.

Gibt es da eine Lösung?
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#2

Re: ClientDataset Filtern

  Alt 7. Jul 2006, 06:15
Hi Alexander,

probiers doch mal so:
Spalte like '%SUCHMICH%'
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
xSkaschY

Registriert seit: 19. Jun 2006
Ort: Bünde
95 Beiträge
 
Delphi 2007 Professional
 
#3

Re: ClientDataset Filtern

  Alt 7. Jul 2006, 06:22
Zitat von Lemi2006:
bisher konnte ich aber nur nach Zeichenketten, die am Anfang stehen filtern

Delphi-Quellcode:

CDS.Filter := '[spalte]=''[text]*''';
CDS.Filtered := true;
würde dann so ausschauen

Spalte like 'SUCHMICH%'
  Mit Zitat antworten Zitat
Lemi2006

Registriert seit: 6. Jul 2006
Ort: Dresden
2 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: ClientDataset Filtern

  Alt 7. Jul 2006, 15:00
Spitze! Klappt alles.
Vielen dank. War mir nähmlich nicht sicher ob ich beim
Filtern auch mit 'LIKE' arbeiten kann.
Alexander
  Mit Zitat antworten Zitat
The_Doomed

Registriert seit: 5. Dez 2007
101 Beiträge
 
#5

Re: ClientDataset Filtern

  Alt 8. Mai 2008, 12:01
wie kann man dies bei einem Datasetfilter erreichen der aus einer xml ließt ?
also My Base - habs bisher so

database.ClientDataSet1.Filter:='ausgabename=''searchfield.Text*'''; wenn ich das aber auf like ändere brint er mir ne fehlermeldung
weil er dann ni checkt in welcher spalte er suchen soll
Zeit totschlagen entehrt den Menschen, schaffen in ihr was bleibt,
erst das heißt gelebt haben wie ein Mensch.
Hans Joachim Ploß

MFG The_Doomed
  Mit Zitat antworten Zitat
The_Doomed

Registriert seit: 5. Dez 2007
101 Beiträge
 
#6

Re: ClientDataset Filtern

  Alt 9. Mai 2008, 16:58
push
Zeit totschlagen entehrt den Menschen, schaffen in ihr was bleibt,
erst das heißt gelebt haben wie ein Mensch.
Hans Joachim Ploß

MFG The_Doomed
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#7

Re: ClientDataset Filtern

  Alt 15. Mai 2008, 23:17
Du musst den Filter-String zusammenbauen:

Delphi-Quellcode:
database.ClientDataSet1.Filtered := False;
database.ClientDataSet1.Filter := Format('ausgabename = %s', [QuotedStr(searchfield.Text + '*')]);
database.ClientDataSet1.Filtered := True;
mr2
"... we know, there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we don't know. But there are also unknown unknowns - the ones we don't know we don't know."
  Mit Zitat antworten Zitat
The_Doomed

Registriert seit: 5. Dez 2007
101 Beiträge
 
#8

Re: ClientDataset Filtern

  Alt 16. Mai 2008, 07:38
das klappt auf jeden fall schon mal gut mein prob is aber immer
noch wie ich es hinbekomme dass er nicht immer von den ersten buchstaben ausgeht
sondern wenn ich ein wort "banane" habe (z.b ^^) und dann "ane" er das trotzdem dalässt
und nicht wegfiltert
Zeit totschlagen entehrt den Menschen, schaffen in ihr was bleibt,
erst das heißt gelebt haben wie ein Mensch.
Hans Joachim Ploß

MFG The_Doomed
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#9

Re: ClientDataset Filtern

  Alt 17. Mai 2008, 22:16
dann musst Du like verwenden:

Delphi-Quellcode:
database.ClientDataSet1.Filtered := False;
database.ClientDataSet1.Filter := Format('ausgabename like %s', [QuotedStr('%' + searchfield.Text + '%')]);
database.ClientDataSet1.Filtered := True;
mr2
"... we know, there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we don't know. But there are also unknown unknowns - the ones we don't know we don't know."
  Mit Zitat antworten Zitat
The_Doomed

Registriert seit: 5. Dez 2007
101 Beiträge
 
#10

Re: ClientDataset Filtern

  Alt 17. Mai 2008, 23:30
ah ja genau das wars super danke sehr


.....................................
Zeit totschlagen entehrt den Menschen, schaffen in ihr was bleibt,
erst das heißt gelebt haben wie ein Mensch.
Hans Joachim Ploß

MFG The_Doomed
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz