Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Check-Group und case of... (https://www.delphipraxis.net/43578-check-group-und-case.html)

jim_raynor 6. Apr 2005 11:52

Re: Check-Group und case of...
 
Indem du die ganzen Else weglässt und einfach die Ifs hintereinander machst.

Delphi-Quellcode:
if cgfilter.ItemChecked [2] = true then
          qtelefonliste.SQL.Strings [4] := 'Datum = ' + '''' + (DateToStr(Date)) + '''' + ' and' ;

        if cgfilter.ItemChecked [3] = true then
          qtelefonliste.SQL.Strings [5] := 'Prioritat = "1" and' ;

        if cgfilter.ItemChecked [4] = true then
          qtelefonliste.SQL.Strings [6] := 'Prioritat = "2" and' ;

usw.
Da du für jeden Filter einen anderen Text hinzufügst, musst du zwangsläufig jedes einzeln abfragen.

alcaeus 6. Apr 2005 11:55

Re: Check-Group und case of...
 
Zitat:

Zitat von JSB
Ich habe nicht gemeint das du bei MICRROSOFT arbeitest!
(Wie könnte/kann man nur darüber glücklich sein? =SCHADE!.?)

Ist OT, und ich habe meine Gruende dafuer ;)

Zitat:

Zitat von JSB
Das ist ja das Prob.
Ich möchte mehrere Auswahlen möglich machen. Eine TRadioGroup kann nicht das Richtige sein. Eine CheckList schon....
ABER: WIE!

So langsam kommt mir vor ich rede mit einer Wand :roll:
Hast du denn die Moeglichkeit mit der Schleife probiert, oder ueberhaupt angesehn?

Greetz
alcaeus

JSB 6. Apr 2005 12:14

Re: Check-Group und case of...
 
Zitat:

Zitat von alcaeus
So langsam kommt mir vor ich rede mit einer Wand :roll:
Hast du denn die Moeglichkeit mit der Schleife probiert, oder ueberhaupt angesehn?

Ja habe ich! Und nochmals:

[Fehler] fTelefonliste.pas(162): Ordinaltyp erforderlich :!: :!: :!: :!:

jim_raynor 6. Apr 2005 12:22

Re: Check-Group und case of...
 
Meinen Beitrag beachtet wieder niemand beachtet :cry:

Über ein Schleife wirst du es nicht vernüftig lösen können solange die Filter für die einzelnen Checkboxen einen unterschiedlichen Aufbau haben.

JSB 6. Apr 2005 12:27

Re: Check-Group und case of...
 
Danke! Aber es ist immer noch zuviel aufwand ... :cry:

Stevie 6. Apr 2005 12:33

Re: Check-Group und case of...
 
Wie wär's denn mit
Delphi-Quellcode:
for i := 0 to Pred(cgfilter.Count) do
  if cgfilter.Checked[i] then
    case i of
      0: qTelefonliste.SQL.Strings [2] := 'BEZUGSPERSON =';
      {...}
    end;

JSB 6. Apr 2005 14:54

Re: Check-Group und case of...
 
Delphi-Quellcode:
 procedure TfmTelefonliste.pbOKClick(Sender: TObject);
  var i: Integer;
begin
 for i := 0 to Pred(cgfilter.Items.Count) do
    if cgfilter.ItemChecked[i] then
      case i of
        0: qTelefonliste.SQL.Strings [2] := 'BEZUGSPERSON =';
        1:
        begin
          qMitarbeiter.SQL.Strings [3] := '''' + dDatabase.iqLogin.fieldbyname('MitarbeiterID').AsString + '''';
          qMitarbeiter.Active := True;
          codesite.SendMsg('Abteilung= ' + qMitarbeiter.fieldbyname('ABTEILUNG').asString + '     ' + 'TAETIGKEITSBEREICH= ' + qMitarbeiter.FieldByName('TAETIGKEITSBEREICH').AsString);
          //  ShowMessage ('MitarbeiterID= ' + qMitarbeiter.fieldbyname('ID').AsString);
          //  ShowMessage ('Abteilung= ' + qMitarbeiter.fieldbyname('ABTEILUNG').asString + '     ' + 'TAETIGKEITSBEREICH= ' + qMitarbeiter.FieldByName('TAETIGKEITSBEREICH').AsString);
          if (qMitarbeiter.fieldbyname('ABTEILUNG').AsString = '') and (qMitarbeiter.FieldByName('TAETIGKEITSBEREICH').AsString = '') then
            MessageDlg('Der Filter: "Mein Bereich",'+#13+#10+'kann nicht verwendet werden!'+#13+#10+'Bitte prüfen Sie ob die Felder ABTEILUNG '+#13+#10+'und TÄTIGKEITSBEREICH in den Mitarbeiterdaten gefüllt '+#13+#10+'wurden!'+#13+#10+'Wenden Sie sich ggf. an den Administrator!', mtError, [mbOK], 0)
          else
            qTelefonliste.SQL.Strings [3] := 'BEREICH = ' + '''' + qMitarbeiter.fieldbyname('ABTEILUNG').AsString + '''' +  ' or BEREICH =' + '''' + qMitarbeiter.fieldbyname('TAETIGKEITSBEREICH').AsString + '''' + ' and ';
        end;
  end;
end;
Klappt...
Danke!! :cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:15 Uhr.
Seite 2 von 2     12   

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