AGB  ·  Datenschutz  ·  Impressum  







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

Verwendung Datenmodul

Ein Thema von d6lpz · begonnen am 30. Mär 2008 · letzter Beitrag vom 30. Mär 2008
Antwort Antwort
Seite 1 von 2  1 2      
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#1

Verwendung Datenmodul

  Alt 30. Mär 2008, 13:05
Hallo,
möchte ungefähr folgendes erreichen:

Delphi-Quellcode:
procedure TMain.lb_nameClick(Sender: TObject);
var
        i :integer;
begin

        for i:=1 to 12 do
                DataModule1.ADOQuery[i].active :=False
        end;
end;
Frage: wie kann man eine Variable in einem Bezeichner verwenden?

Danke für alle Tips

Dirk

[edit=MrSpock]Delphi-Code Tags eingefügt. Mfg, MrSpock[/edit]
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:07
Such mal nach .FindComponent()
Markus Kinzler
  Mit Zitat antworten Zitat
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#3

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:24
Zitat von mkinzler:
Such mal nach .FindComponent()
habe jetzt folgendes:
Delphi-Quellcode:
procedure TMain.lb_nameClick(Sender: TObject);
var
        str_datstart :string;
        str_datend :string;
        i :integer;
const
  NamePrefix = 'ADOQuery';

begin
        str_datstart :='01.01.2007';
        str_datend :='31.12.2007';

        for i:=1 to 12 do
                with DataModule1(FindComponent(NamePrefix + [i])) do
                begin
                        active :=False;
                end;
        end;
end;
funktioniert leider nicht - ich komme mit dieser Sache noch nicht zurecht
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:28
with DataModule1.FindComponent(NamePrefix + IntToStr(i)) as TADOQuery do Versuch es mal so.

[edit] Typecasting vergessen [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:37
Hallo Dirk,

manchmal genügt eine einzelne Zeile zum Schließen aller offenen DataSets:

Delphi-Quellcode:
procedure TMain.lb_nameClick(Sender: TObject);
var
  str_datstart, str_datend: string;
  i: Integer;
  dtStart, dtEnd: TDateTime;
begin
  dtStart := EncodeDate(2007, 1, 1);
  dtEnd := EncodeDate(2007, 12, 31);

  // ...

  DataModule1.ADOConnection1.Close;
end;
Freundliche Grüße
  Mit Zitat antworten Zitat
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#6

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:43
Zitat von DeddyH:
with DataModule1.FindComponent(NamePrefix + IntToStr(i)) as TADOQuery do Versuch es mal so.

[edit] Typecasting vergessen [/edit]
Danke !!

Sorry für meine NOCH unqualifizierten Fragen - bin halt beginner.

Dirk
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:44
Wir haben alle mal angefangen
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#8

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 13:52
Zitat von marabu:
Hallo Dirk,

manchmal genügt eine einzelne Zeile zum Schließen aller offenen DataSets:

Delphi-Quellcode:
procedure TMain.lb_nameClick(Sender: TObject);
var
  str_datstart, str_datend: string;
  i: Integer;
  dtStart, dtEnd: TDateTime;
begin
  dtStart := EncodeDate(2007, 1, 1);
  dtEnd := EncodeDate(2007, 12, 31);

  // ...

  DataModule1.ADOConnection1.Close;
end;
Freundliche Grüße
Hallo

Aber zum Öffnen muß ich doch alle Querys einzeln aktivieren oder geht das auch anders??
Dirk
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 14:02
Zum Öffnen aller DataSets einer Connection kannst du über deren Eigenschaft DataSets[] iterieren. Vielleicht möchtest du das beim Ereignis AfterConnect() der Connection erledigen.
  Mit Zitat antworten Zitat
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#10

Re: Verwendung Datenmodul

  Alt 30. Mär 2008, 14:03
Zitat von DeddyH:
Wir haben alle mal angefangen
Danke für dein Verständnis

Habe nach einigem Probieren und "Hilfe" lesen aber immer noch Probleme.

Bekomme bei Folgendem die Meldung '"." erwartet, aber ";" gefunden'
Delphi-Quellcode:
procedure TMain.lb_nameClick(Sender: TObject);
var
        x_datstart, x_datend: TDateTime;
        i :integer;
const
  NamePrefix = 'ADOQuery';

begin
        x_datstart := EncodeDate(2007, 1, 1);
        x_datend := EncodeDate(2007, 12, 31);

        for i:=1 to 12 do
            with DataModule1.FindComponent(NamePrefix + IntToStr(i)) as TADOQuery do
                begin
                        Active:=false;
                        Parameters.ParamByName('emplid').Value:=lb_name.KeyValue;
                        Parameters.ParamByName('DatStart').Value:=x_datstart;
                        Parameters.ParamByName('DatEnd').Value:=x_datend;
                end;
        end;
end;

end.
die Variante geht auch nicht:

Delphi-Quellcode:
procedure TMain.lb_nameClick(Sender: TObject);
var
        x_datstart, x_datend: TDateTime;
        i :integer;
const
  NamePrefix = 'ADOQuery';

begin
        x_datstart := EncodeDate(2007, 1, 1);
        x_datend := EncodeDate(2007, 12, 31);

        for i:=1 to 12 do
            with DataModule1.FindComponent(NamePrefix + IntToStr(i)) as TADOQuery do
                begin
                        .Active:=false;
                        .Parameters.ParamByName('emplid').Value:=lb_name.KeyValue;
                        .Parameters.ParamByName('DatStart').Value:=x_datstart;
                        .Parameters.ParamByName('DatEnd').Value:=x_datend;
                end;
        end;
end;

end.
Hast ud einmal ein Hinweis?
Dirk
  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 02:03 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