Laufzeitfehler Objektvariable nicht belegt

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

Hi,

ich nutze folgende Makro:
Sub openForm
ThisDatabaseDocument.FormDocuments.getByName("s").open
End Sub
Das Formular heißt "s" und ist vorhanden. Wenn ich das Makro aber ausprobiere bekomme ich die Fehlermeldung "Basic-Laufzeitfehler Objektvariable nicht belegt"

Was mache ich falsch?
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von F3K Total »

Moin,
wenn ich deinen Code ausprobiere, bekomme ich mit AOO unter Windows 7 folgenden Fehler:
noConnection.png
noConnection.png (16.47 KiB) 9870 mal betrachtet
Wie die Fehlermeldung sagt, fehlt die Verbindung zur Dantenbank. Wenn man in den Tabellenbeich klickt, ein Formular oder eine Abfrage von Hand öffnet, wird diese Verbindung von BASE hergestellt.
Startet man also dein Makro aus einem geöffneten Formular, kommt es nicht zu der Fehlermeldung.
Willst du aber ein Formular direkt nach dem Öffnen von Base öffnen muss man dem Makro zwei Zeilen hinzufügen, um die Verbindung per Makro zu erzeugen:

Code: Alles auswählen

Sub openForm
    oController = ThisDatabaseDocument.currentController
    if not oController.isConnected then oController.Connect
    ThisDatabaseDocument.FormDocuments.getByName("s").open
End Sub 
Die Beispieldatei funktioniert bei mir.
Gruß R
Dateianhänge
S.odb
(21.97 KiB) 231-mal heruntergeladen
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

Herzlichen Dank, aber ich bekomme immer noch eine Fehlermeldung, auch bei deiner Test DB.

Bildschirmfoto 2019-05-19 um 21.04.02.png
Bildschirmfoto 2019-05-19 um 21.04.02.png (24.17 KiB) 9830 mal betrachtet

Jemand eine Idee woran das liegen könnte? Das OO ist gerade frisch installiert.
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von F3K Total »

Hi,
wie hast du denn welches Makro gestartet?
Bist du sicher, das meine, enthalten in der .odb-Datei, gestartet zu haben?
Gruß R
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

OO beendet, Download geöffnet. Passiert nix. Dann über Extra - Makro - Makro ausfüren, das Makro ausgeführt. Dann kommt der Fehler und das Makro steht in der ersten Zeile.
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von F3K Total »

erstmal die Datei lokal speichern...
Gruß R
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

klar, die Datei habe ich runtergeladen, und dann gestartet....
RobertG
********
Beiträge: 2033
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von RobertG »

Hallo Alex,

ich habe die Datei runter geladen, gestartet, das Makro wie von Dir beschrieben gestartet und das Formular ging auf. Wenn so etwas wie "Variable nicht definiert" kommt, dann deutet das darauf hin, dass irgendwo

Code: Alles auswählen

Option Explicit
definiert sein könnte.
Dann musst Du

Code: Alles auswählen

DIM oController AS OBJECT
in die Prozedur aufnehmen.

Gruß

Robert
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

Danke, ich hab das ergänzt, leider erhalten ich beim Testen nach wie vor die Fehlermeldung
Bildschirmfoto 2019-05-20 um 22.20.17.png
Bildschirmfoto 2019-05-20 um 22.20.17.png (72.3 KiB) 9713 mal betrachtet
acco
***
Beiträge: 52
Registriert: So, 04.05.2014 19:54

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von acco »

Moin Alex,
ich denke Du führst das falsche Makro aus. Dein Bildschirmfoto zeigt, dass du das unter "[Meine Makros & Dialoge].Standard" befindliche Makro ausführst und nicht das in der s.odb integrierte, wie es F3K Total bereits vermutete. Siehe mein Bildschirmfoto. Mit dem integrierten Makro klappt es.
Gruß acco
Dateianhänge
S.odb.png
S.odb.png (43.8 KiB) 9686 mal betrachtet
openSUSE 13.1, LibreOffice 4.3.2.2
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

Ahh, jetzt habe ich es auch gerafft, grr, sorry.

Wenn ich das Makro manuell jetzt von der richtigen Position starte funktioniert es.

Wenn ich aber das "richtige" Makro jetzt automatisch starten lassen möchte dann stürzt OO ab.

Hab mal das Log hier in eine txt kopiert, vielleicht kann jemand was damit anfangen.

https://www.dropbox.com/s/hcwppftppxuc2vs/oo.txt?dl=0
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von F3K Total »

Ick kann zwar mit dem Logfile nichts anfangen, aber was genau meinst du mit
AlexD hat geschrieben: Di, 21.05.2019 11:20Wenn ich aber das "richtige" Makro jetzt automatisch starten lassen möchte dann stürzt OO ab.
An welches Ereignis hast du es denn gebunden?
Wenn ich das Makro an "Ansicht wurde erzeugt" hänge, habe ich keine Probleme...Beispiel wieder anbei ...
Gruß R
Dateianhänge
S.odb
(22.08 KiB) 198-mal heruntergeladen
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

makro.jpg
makro.jpg (139.75 KiB) 9487 mal betrachtet
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von F3K Total »

ANSICHT WURDE ERZEUGT, drei Zeilen tiefer...
Manno
AlexD
Beiträge: 9
Registriert: So, 19.05.2019 11:25

Re: Laufzeitfehler Objektvariable nicht belegt

Beitrag von AlexD »

F3K Total hat geschrieben: Mi, 22.05.2019 19:12 ANSICHT WURDE ERZEUGT, drei Zeilen tiefer...
Damit das Makro bei Start ausgeführt wird muss "Ansicht wurde erzeugt" gewählt werden ?

Wie dem auch sei, OO stürzt dann immer ab, egal ob mit der Testdatei, oder mit meiner Datei
Antworten