AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Suche geeignete Komponente ?
Thema durchsuchen
Ansicht
Themen-Optionen

Suche geeignete Komponente ?

Ein Thema von Vader · begonnen am 17. Mai 2006 · letzter Beitrag vom 22. Mai 2006
 
Vader

Registriert seit: 6. Mai 2003
804 Beiträge
 
Delphi 6 Enterprise
 
#34

Re: Suche geeignete Komponente ?

  Alt 21. Mai 2006, 22:23
hallo marabu,

hab das jetzt so realisiert wie du das gemeint hast im beitrag #13 glaube ich

Delphi-Quellcode:
// funktion zum erzeugen des lookupfeldes im dbgrid

function tform1.CreateLookupField: TField;
begin
  Result := TStringField.Create(Query1);
  with Result do
  begin
    Name := Query1.Name + FieldName;
    Size := 50;
    DisplayLabel := 'Firma';
    DisplayWidth := 12;
    FieldName := 'ANREDE2';
    Lookup := true;
    LookupDataSet := query2;
    KeyFields := 'ANR_ID';
    LookupKeyFields := 'ID';
    LookupResultField := 'Phrase';
    DataSet := Query1;
    Index := 2;
  end;
end;



// erzeugt das lookupfield im dbgrid

procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
  f: TField;
  begin

  with Query1 do
  begin
   Query1.Close;
    // SQL Statement festlegen
    Query1.SQL.Text := 'SELECT * FROM firma';
    // Spalten analysieren
    FieldDefs.Update;
    // persistente Felder erzeugen
    for i := 0 to FieldDefs.Count - 1 do
      with FieldDefs[I] do
        if DataType <> ftUnknown then
        begin
          f := CreateField(Self);
          // Schlüsselfelder verstecken
          f.Visible := Copy(f.FieldName, Length(f.FieldName) - 1, 2) <> 'ID';
        end;
  end;
  CreateLookupField;
  Query1.Open;
end;

das funzt jetzt super, aber ein neues problem habe ich, wo ich nicht weiter komme,
und zwar meine suchfunktion geht jetzt nicht mehr bei dem feld "phrase" ,
weil ich ja die Firmennamen von einer anderen tabelle bekomme ( anreden ), aber ich
bräuchte dort auch eine suchfunktion ?

und die fehlermeldung kommt auch

keine übereinstimmung der typen im ausdruck so schaute meine suchfunktion aus :

Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
var
  suche: string;
begin
  with Query1 do
  begin
    Query1.Close;
    Query1.SQL.Text := 'SELECT * FROM firma WHERE (Firmenname like :suche) OR (Bezeichnung like :suche)OR (Name like :suche)';
    Query1.ParamByName('suche').asString := Edit1.Text + '%';
    Query1.Open;

  end;

  end;
mfg vader
  Mit Zitat antworten Zitat
 


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 12:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz