Autor Beitrag
Hänsel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: Do 09.08.18 15:30 
Ändern bei ADOQuery Connection

Hallo kann jemand weiterhelfen,

Ich habe zwei ADOConnection Komponenten. Alle ADOQuery Tabellen sind zur Zeit mit der ADOConection1 verbunden. Ich möchte aber zur Laufzeit eine Tabelle (ADOQuery1) mit ADOConnection2 verbinden.

Hier gab es eine Fehlermeldung
ausblenden Delphi-Quelltext
1:
DataModule1.ADOQuery1.Connection:= ADOConnection2;					

Im voraus besten Dank
hänsel

Moderiert von user profile iconTh69: Delphi-Tags hinzugefügt
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6279
Erhaltene Danke: 119

Windows 7 + Windows 10
Tokyo Prof + CE
BeitragVerfasst: Do 09.08.18 15:32 
user profile iconHänsel hat folgendes geschrieben Zum zitierten Posting springen:
Hier gab es eine Fehlermeldung

Und jetzt dürfen alle raten, welche das ist? :wink:
Bitte die Fehlermeldung mit angeben.
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112
Erhaltene Danke: 70

Win7
DXE2 Prof, Lazarus
BeitragVerfasst: Do 09.08.18 16:56 
Das ist ein bisschen wie nen Ratespiel ohne Felermeldung. Aber, falls ich das richtig verstehe ist deine Query vorher schon mit der ersten Connection verbunden gewesen? Dann musst Du die Query natürlich zu machen bevor Du die Connection wechseln kannst.

_________________
Solange keine Zeile Code geschrieben ist, läuft ein Programm immer fehlerfrei.
Ich teste nicht, weil ich Angst habe Fehler zu finden.
Hänsel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: Do 09.08.18 17:19 
ausblenden Delphi-Quelltext
1:
DataModule1.ADOQuery_Objekte.Connection:='ADOConnection2';					

Die Fehlermeldung lautet:
Zitat:
[dcc32 Fehler] Unit_Abrechnung.pas(126): E2010 Inkompatible Typen: 'TADOConnection' und 'string'

hatte ich vergessen.

Moderiert von user profile iconTh69: Delphi-Tags hinzugefügt
Moderiert von user profile iconTh69: Quote-Tags hinzugefügt
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112
Erhaltene Danke: 70

Win7
DXE2 Prof, Lazarus
BeitragVerfasst: Fr 10.08.18 12:45 
Auf die Antwort zu deiner Frage kommst Du doch selber!
Dafuer muss man doch nicht erst eine Frage hier im im Forum stellen und dann tagelang auf eine Antwort warten.

PS: Schau doch einfach mal nach von was fuer einem Typ Connection sein muss!

_________________
Solange keine Zeile Code geschrieben ist, läuft ein Programm immer fehlerfrei.
Ich teste nicht, weil ich Angst habe Fehler zu finden.
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6279
Erhaltene Danke: 119

Windows 7 + Windows 10
Tokyo Prof + CE
BeitragVerfasst: Fr 10.08.18 13:02 
Boah, ich habe immer nur im ersten Beitrag versucht, die Fehlermeldung abzugleichen.

@Hänsel:
Vergleiche mal die Zeile des Sources, der in deinem Beitrag mit der Fehlermeldung steht, mit dem im ersten Beitrag. Die sind unterschiedlich.

Das ist so banal, dass ich die Lösung nicht verraten mag. Das würde den Lerneffekt zerstören.
Hänsel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: Fr 10.08.18 13:26 
Hallo
wenn ich es gewusst hätte, hätte ich euch nicht gefragt.
Trotzdem besten Dank.

hänsel
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6279
Erhaltene Danke: 119

Windows 7 + Windows 10
Tokyo Prof + CE
BeitragVerfasst: Fr 10.08.18 13:50 
ausblenden Delphi-Quelltext
1:
2:
DataModule1.ADOQuery_Objekte.Connection:='ADOConnection2'// Fehler
DataModule1.ADOQuery_Objekte.Connection:=ADOConnection2; // kein Fehler
Hänsel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: So 12.08.18 08:49 
Dies wurde bei mir auch schon getestet, mit folgender Fehlermeldung:
Zitat:
[dcc32 Fehler] Unit_Abrechnung.pas(864): E2003 Undeklarierter Bezeichner: 'ADOConnection2'


Moderiert von user profile iconTh69: Quote-Tags hinzugefügt
Frühlingsrolle
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2062
Erhaltene Danke: 376

[Win NT] 5.1 x86 6.1 x64
[Delphi] 7 PE, 2006, 10.1 Starter, Lazarus - [C#] VS Exp 2012 - [Android API 15] VS Com 2015, Eclipse, AIDE - [C++] Builder 10.1
BeitragVerfasst: So 12.08.18 12:06 
Guten Tag Hänsel,

in deinem Projekt fehlt das entsprechende TADOConnection Objekt namens ADOConnection2.
Das sollte sich entweder auf deinem Formular befinden, oder zumindest zur Laufzeit erzeugt, sowie innerhalb der Klasse deklariert sein, z.B.:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
type
  TForm1 = class(TForm)
    ADOConnection2: TADOConnection;
  private
  public
  end;

_________________
„Politicians are put there to give you the idea that you have freedom of choice. You don’t. You have no choice. You have owners. They own you. They own everything." (George Denis Patrick Carlin)
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6279
Erhaltene Danke: 119

Windows 7 + Windows 10
Tokyo Prof + CE
BeitragVerfasst: Mo 13.08.18 07:45 
Vielleicht fehlt es nicht, sondern ist nur auf der falschen Form/DataModul.
Bei der Schreibweise der ADOQuery vermute ich, dass das hier die Lösung sein könnten:
ausblenden Delphi-Quelltext
1:
DataModule1.ADOQuery_Objekte.Connection:=DataModule1.ADOConnection2;					

Falls das so sein sollte:
Wenn du bei der Zuweisung nicht sagst, wo das liegt, wird nur in der aktuellen Form gesucht.
Genaugenommen ist das in dieser Formulierung nicht korrekt, aber ich will dich an dieser Stelle nicht verwirren. Sollte das die Lösung sein, kann man sicher nochmal genauer darauf eingehen
Hänsel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: Mo 13.08.18 13:31 
Der letzte Hinweis war richtig. Für mich nicht ganz klar, denn ich habe ja zu Begin der Zeile (DataModule1) ja schon den Ort benannt. Aber egal so läuft es und dafür möchte ich mich noch einmal bedanken!

Gruß
hänsel
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6279
Erhaltene Danke: 119

Windows 7 + Windows 10
Tokyo Prof + CE
BeitragVerfasst: Mo 13.08.18 14:14 
Neee, egal ist das nicht (falls du was dabei lernen möchtest) :wink:

Einfach ausgedrückt:
Deine "Variable" ADOQuery_Objekte ist etwas eigenständiges und hat mit der "Variablen" ADOConnection2 nichts zu tun, außer, dass beide in DataModule1 deklariert wurden.
Das bedeutet, dass du die Variablen immer vollständig bezeichnen musst, wenn du diese verwenden willst. Es gibt eine Möglichkeit, das zu umgehen (with), aber von der Nutzung rät eigentlich jeder Profi ab. Falls du also mal über "with" stolperst, lass die Finger davon.