AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Table Filter

Ein Thema von strom · begonnen am 1. Jul 2016 · letzter Beitrag vom 1. Jul 2016
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#11

AW: Table Filter

  Alt 1. Jul 2016, 10:13
versuche gerade alles, habe noch ein Brett vorm Kopf

Delphi-Quellcode:
Form1.Table_Einsaetze_Event.Filtered := false;
 Form1.Table_Einsaetze_Event.Filter := 'EINSATZNUMMER ='+ Form1.Table_Einsaetze_Event.FieldByName('EINSATZNUMMER').Text;
 Form1.Table_Einsaetze_Event.Filtered := true;
  Mit Zitat antworten Zitat
TomF

Registriert seit: 29. Sep 2015
Ort: Österreich, Innviertel
25 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Table Filter

  Alt 1. Jul 2016, 10:34
Vielleicht so...
Code:
Form1.Table_Einsaetze_Event.Filter := 'EINSATZNUMMER ='+ QuotedStr(Form1.Table_Einsaetze_Event.FieldByName('EINSATZNUMMER').Text);
Thomas
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#13

AW: Table Filter

  Alt 1. Jul 2016, 10:53
habe ich schon versucht! geht nicht

als Zusatz, die Datensätze werden in einem DBGrid angezeigt

Delphi-Quellcode:
 Form3.CRDBGrid2.Columns[0].Visible := False;
 //Form3.CRDBGrid2.Columns[1].Visible := False;
 Form3.CRDBGrid2.Columns[6].Visible := False;
 Form1.Table_Einsaetze_Event.Filtered := false;
 Form1.Table_Einsaetze_Event.Filter := 'EINSATZNUMMER ='+ QuotedStr(Form1.Table_Einsaetze_Event.FieldByName('EINSATZNUMMER').Text);
 Form1.Table_Einsaetze_Event.Filtered := true;
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: Table Filter

  Alt 1. Jul 2016, 11:08
Und du bist dir auch sicher, dass du dir die Form anschaust, die durch die in der Variablen Form1 hinterlegten Referenz gemeint ist?

Könnte man z.B. so prüfen:
Delphi-Quellcode:
procedure TForm1.Button1_Click(Sender:TObject);
begin
  if Form1 <> Self then
    ShowMessage( 'Ey, ich bin gar nicht mit Form1 gemeint!' );
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#15

AW: Table Filter

  Alt 1. Jul 2016, 11:15
hey,
die Komponente liegt auf Form1, das DBGrid auf Form3.
Alles richtig so

hier diese Fehlermeldung kommt:
[dcc32 Warnung] BasisClient.pas(153): W1058 Implizite String-Umwandlung mit potenziellem Datenverlust von 'string' zu 'AnsiString'

Geändert von strom ( 1. Jul 2016 um 11:19 Uhr)
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#16

AW: Table Filter

  Alt 1. Jul 2016, 11:22
Das wird hier jetzt eher zur wilden Spekulation.

Zeig' uns doch einfach mal, wie der Filter so aussieht:
Delphi-Quellcode:
Form1.Table_Einsaetze_Event.Filtered := false;
Form1.Table_Einsaetze_Event.Filter := 'EINSATZNUMMER ='+ QuotedStr(Form1.Table_Einsaetze_Event.FieldByName('EINSATZNUMMER').Text);
ShowMessage(QuotedStr(Form1.Table_Einsaetze_Event.Filter));
Form1.Table_Einsaetze_Event.Filtered := true;
Die Ausgabe von ShowMessage postest Du bitte hier.

Die Art der Ausgabe / Anzeige der Daten, ist für das Setzen von Filtern irrelevant.
Entscheidend ist die korrekte Syntax der Filter.

Bei "geht nicht" gehe ich davon aus, dass die Funktionalität des Filters nicht gegeben ist, er also fehlerhaft ist. Dies äußert sich für gewöhnlich durch eine Exception. Gibt es eine? Wenn ja, dürften wir ihren Inhalt erfahren. Gibt es keine Exception, dann bitte die Info, dass es keine Exception gibt.

In dem Fall ist übrigens davon auszugehen, dass es die entsprechenden Sätze nicht gibt.
Von welchem Typ ist denn Einsatznummer? Integer? Dann wäre die sinnvollste Methode, den Filter zu setzen vermutlich:
Delphi-Quellcode:
Form1.Table_Einsaetze_Event.Filtered := false;
Form1.Table_Einsaetze_Event.Filter := Format('EINSATZNUMMER = %d', [Form1.Table_Einsaetze_Event.FieldByName('EINSATZNUMMER').AsInteger]);
Form1.Table_Einsaetze_Event.Filtered := true;
Sollte Einsatznummer vom Typ String sein, dann wäre dashier eventuell die bessere Variante des Filtersetzens:
Delphi-Quellcode:
Form1.Table_Einsaetze_Event.Filtered := false;
Form1.Table_Einsaetze_Event.Filter := Format('EINSATZNUMMER = %s', [QuotedStr(Form1.Table_Einsaetze_Event.FieldByName('EINSATZNUMMER').AsString)]);
Form1.Table_Einsaetze_Event.Filtered := true;
Werden im DBGrid nach dem Filtered := true; eigentlich irgendwelche Daten angezeigt? Oder ist die Ergebnismenge leer oder ist sie unverändert?
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#17

AW: Table Filter

  Alt 1. Jul 2016, 11:38
Exception :
Argument außerhalb des Bereichs


Im CRDBGrid werden immer alle Datensätze angezeigt.

ShowMessage(QuotedStr(Form1.Table_Einsaetze_Event.Filter)); Ergebnis : '' // Verstehe ich nicht ???

Geändert von strom ( 1. Jul 2016 um 12:03 Uhr)
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#18

AW: Table Filter

  Alt 1. Jul 2016, 11:58
Exception :
Argument außerhalb des Bereichs


Im CRDBGrid werden immer alle Datensätze angezeigt.
Naja, wenn 'ne Exception fliegt, wird ja auch kein Filter aktiv, von daher ändert sich auch nix in der Anzeige.

Wenn Du uns jetzt auch noch was zum Datentyp von Einsatznummer sagen könntest und uns mal den Filter zur Verfügung stellen könntest, hätte die mal eine kleine Pause
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#19

AW: Table Filter

  Alt 1. Jul 2016, 12:05
es ist eine Zahl mit zehn Zeichen

Beispiel: 1234567890

aber im Filter steht nichts drin!

ShowMessage(QuotedStr(Form1.Table_Einsaetze_Event.Filter)); Ergebnis : ''
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#20

AW: Table Filter

  Alt 1. Jul 2016, 12:10
habe jetzt mal ein Edit dazwischen, dort steht die Zahl drin!

Delphi-Quellcode:
Form3.Edit2.Text := Form1.Table_Einsaetze.FieldByName('EINSATZNUMMER').Text;
 Form1.Table_Einsaetze_Event.Filtered := false;
  Form1.Table_Einsaetze_Event.Filter := 'EINSATZNUMMER='+ QuotedStr(Form3.Edit2.Text);
Form1.Table_Einsaetze_Event.Filtered := true;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 17:23 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