Makro Automatisch Starten beim öffnen einer Base DB
Moderator: Moderatoren
Makro Automatisch Starten beim öffnen einer Base DB
Hi..
Versuche gerade mal in Base eine Datenbank frontend zu erstellen. Arbeite normalerweise mit Access und habe da auch schon einige Projekte umgesetzt.
Ich wollte jetzt mal ein eigenes unter ooBase zum Laufen bringen und es fängt schon gleich mit dem ersten Formular an bzw mit dem ersten Basic Programm.
In Access gibt es die Möglichkeit beim Start einer .mdb Datei ein Formular bzw ein VBA-Script auszuführen. Ich habe in einigen Büchern bzw. online nach einer Möglichkeit in oo gesucht und folgendes gefunden: Man geht unter Extras -> Makros ->Makros_verwalten -> Makros. Dort wählt man die gewünschte Funktion aus und klickt auf Zuordnen. Danach hat man eine Auswahl, wo man z.B. Dokument öffnen auswählt und auf Makro klicken kann, um die Funktion zuzuweisen. Und im unteren Bereich kann man ihm sagen, ob es im Dokument oder in oo gespreichert werden soll. Das ist auch eine supersache. Das geht unter ooWrite und ooCalc, aber im ooBase bekomme ich leider nur das OpenOffice.org zur Auswahl und nicht die Datenbank.odb. Das ist schecht.
Hat jemand eine Idee, was das Problem ist oder ist das ein Bug in Base??
Versuche gerade mal in Base eine Datenbank frontend zu erstellen. Arbeite normalerweise mit Access und habe da auch schon einige Projekte umgesetzt.
Ich wollte jetzt mal ein eigenes unter ooBase zum Laufen bringen und es fängt schon gleich mit dem ersten Formular an bzw mit dem ersten Basic Programm.
In Access gibt es die Möglichkeit beim Start einer .mdb Datei ein Formular bzw ein VBA-Script auszuführen. Ich habe in einigen Büchern bzw. online nach einer Möglichkeit in oo gesucht und folgendes gefunden: Man geht unter Extras -> Makros ->Makros_verwalten -> Makros. Dort wählt man die gewünschte Funktion aus und klickt auf Zuordnen. Danach hat man eine Auswahl, wo man z.B. Dokument öffnen auswählt und auf Makro klicken kann, um die Funktion zuzuweisen. Und im unteren Bereich kann man ihm sagen, ob es im Dokument oder in oo gespreichert werden soll. Das ist auch eine supersache. Das geht unter ooWrite und ooCalc, aber im ooBase bekomme ich leider nur das OpenOffice.org zur Auswahl und nicht die Datenbank.odb. Das ist schecht.
Hat jemand eine Idee, was das Problem ist oder ist das ein Bug in Base??
Re: Makro Automatisch Starten beim öffnen einer Base DB
Hallo
habe auch schon intensiv im ganzen Forum, Büchern... nach diesem Problem gesucht und bin immer darauf gestossen, dass dies (noch) nicht möglich ist in Base.
Habe bei mir das Problem so gelöst, dass ich das Startformular als externes Dokument (Textdokument .odt) gespeichert habe.
Die Datenbank muss registriert sein, sonst klappts nicht.
Nun kann ich dieses externe Formular öffnen, den gewünschten Butten (z.B. Daten erfassen) anklicken und arbeiten.
Die Datenbank selber wird gar nicht mehr aktiv angezeigt.
Klappt bisher problemlos.
Gruss
habe auch schon intensiv im ganzen Forum, Büchern... nach diesem Problem gesucht und bin immer darauf gestossen, dass dies (noch) nicht möglich ist in Base.
Habe bei mir das Problem so gelöst, dass ich das Startformular als externes Dokument (Textdokument .odt) gespeichert habe.
Die Datenbank muss registriert sein, sonst klappts nicht.
Nun kann ich dieses externe Formular öffnen, den gewünschten Butten (z.B. Daten erfassen) anklicken und arbeiten.
Die Datenbank selber wird gar nicht mehr aktiv angezeigt.
Klappt bisher problemlos.
Gruss
Sämtliche Probleme, welche ich ohne Computer nicht hatte, kann ich nun mit diesem lösen.
-
- ***
- Beiträge: 53
- Registriert: Mo, 27.11.2006 15:17
- Wohnort: Nürnberg
- Kontaktdaten:
Makro Automatisch Starten beim öffnen einer Base DB
Hallo,
gibt es dafür mittlerweile eine Lösung?
Ich habe meine Makros seit oOO 3.x vom Formular meines Base-Dokumentes getrennt (per Assistent und mächtig Handarbeit!).
Leider ist aber ein Zuordung über den Dialog "Extras->Makros->Makros verwalten->openOffcice.org Basic..." -> <Zuordnen> -> TAB "Ereignisse" unter z.B. dem Punkt "Dokument öffnen" ->Zuweisen: <Makro> nicht möglich.
Die Bibliothek des aktuellen Dokumentes (... hier meine Datei KuDaBa2010.odb) ist leider nicht in der Liste in der linken Spalte aufgeführt.
Gibt es mittlerweile eine adäquate Lösung des Problems?
Hintergrund ist folgender: Ich möchte von Formularen weg und diese gänzlich durch Dialoge ersetzen. Bisher hatte ich meine Dialoge mittels Schalter (-buttons) über das Formular gestartet. Ich würde mir zukünftig die Steuerung von einer "Startdialogbox" aus wünschen. Aber so einen Dialog muss ich ja irgendwie automatisch nach Öffnen bzw. Laden des Dokumentes (hier die ODB-Datei) starten (per Makro).
Hat schon jemand Erfahrung damit gemacht und weiß wie das geht?
Danke in voraus!
Greetz,
Billy
gibt es dafür mittlerweile eine Lösung?
Ich habe meine Makros seit oOO 3.x vom Formular meines Base-Dokumentes getrennt (per Assistent und mächtig Handarbeit!).
Leider ist aber ein Zuordung über den Dialog "Extras->Makros->Makros verwalten->openOffcice.org Basic..." -> <Zuordnen> -> TAB "Ereignisse" unter z.B. dem Punkt "Dokument öffnen" ->Zuweisen: <Makro> nicht möglich.
Die Bibliothek des aktuellen Dokumentes (... hier meine Datei KuDaBa2010.odb) ist leider nicht in der Liste in der linken Spalte aufgeführt.
Gibt es mittlerweile eine adäquate Lösung des Problems?
Hintergrund ist folgender: Ich möchte von Formularen weg und diese gänzlich durch Dialoge ersetzen. Bisher hatte ich meine Dialoge mittels Schalter (-buttons) über das Formular gestartet. Ich würde mir zukünftig die Steuerung von einer "Startdialogbox" aus wünschen. Aber so einen Dialog muss ich ja irgendwie automatisch nach Öffnen bzw. Laden des Dokumentes (hier die ODB-Datei) starten (per Makro).
Hat schon jemand Erfahrung damit gemacht und weiß wie das geht?
Danke in voraus!
Greetz,
Billy
... im Prinzip ist alles einfach. Vorausgesetzt man weiss, wie's geht!
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Makro Automatisch Starten beim öffnen einer Base DB
1. Zuordnung geht (bei mir) bei einem Formular über Extras>Anpassen...>Ereignisse>Dokument öffnen und ist nur dem Formular zuordnenbarkeyboard-billy hat geschrieben:Leider ist aber ein Zuordung über den Dialog "Extras->Makros->Makros verwalten->openOffcice.org Basic..." -> <Zuordnen> -> TAB "Ereignisse" unter z.B. dem Punkt "Dokument öffnen" ->Zuweisen: <Makro> nicht möglich.
Die Bibliothek des aktuellen Dokumentes (... hier meine Datei KuDaBa2010.odb) ist leider nicht in der Liste in der linken Spalte aufgeführt.
Gibt es mittlerweile eine adäquate Lösung des Problems?
Hintergrund ist folgender: Ich möchte von Formularen weg und diese gänzlich durch Dialoge ersetzen.
2. Wenn Du sowieso nur Dialoge einsetzen willst, dann kannst Du Makros auch direkt starten (angepasstes Icon; suche "Makros starten von der Kommandozeile") - oder über ein leeres Dokument, welches sofort versteckt wird (Hintergrund). Du benötigst dann keine ODB mehr.
Hilft das weiter?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
-
- ***
- Beiträge: 53
- Registriert: Mo, 27.11.2006 15:17
- Wohnort: Nürnberg
- Kontaktdaten:
Re: Makro Automatisch Starten beim öffnen einer Base DB
1. Zuordnung geht (bei mir) bei einem Formular über Extras>Anpassen...>Ereignisse>Dokument öffnen und ist nur dem Formular zuordnenbarkeyboard-billy hat geschrieben:Leider ist aber ein Zuordung über den Dialog "Extras->Makros->Makros verwalten->openOffcice.org Basic..." -> <Zuordnen> -> TAB "Ereignisse" unter z.B. dem Punkt "Dokument öffnen" ->Zuweisen: <Makro> nicht möglich.
Die Bibliothek des aktuellen Dokumentes (... hier meine Datei KuDaBa2010.odb) ist leider nicht in der Liste in der linken Spalte aufgeführt.
Gibt es mittlerweile eine adäquate Lösung des Problems?
Hintergrund ist folgender: Ich möchte von Formularen weg und diese gänzlich durch Dialoge ersetzen.
2. Wenn Du sowieso nur Dialoge einsetzen willst, dann kannst Du Makros auch direkt starten (angepasstes Icon; suche "Makros starten von der Kommandozeile") - oder über ein leeres Dokument, welches sofort versteckt wird (Hintergrund). Du benötigst dann keine ODB mehr.
Ja, ein bisschenkomma4 hat geschrieben:Hilft das weiter?
... und was ist dann mit meiner Datenbankkomma4 hat geschrieben:Du benötigst dann keine ODB mehr.
... ich glaube, dass das eher einem brauchbaren Lösungsansatz entspricht. Ich hab's auch gleich ausprobiert !komma4 hat geschrieben:2. Wenn Du sowieso nur Dialoge einsetzen willst, dann kannst Du Makros auch direkt starten (angepasstes Icon; suche "Makros starten von der Kommandozeile") - oder über ein leeres Dokument, welches sofort versteckt wird (Hintergrund).
Die Sache mit dem angepassten Icon funzt. Das ist schon mal ein guter Schritt.
Den Punkt "Makros starten von der Kommandozeile" hab ich in der Hilfe leider nicht gefunden. Vielleicht kannst Du mir das noch näher erklären.
Greetz,
Billy
... im Prinzip ist alles einfach. Vorausgesetzt man weiss, wie's geht!
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Makro Automatisch Starten beim öffnen einer Base DB
Die ODB brauchst Du dann nur zur Registrierung der Datenbank.keyboard-billy hat geschrieben:... und was ist dann mit meiner Datenbankkomma4 hat geschrieben:Du benötigst dann keine ODB mehr.
Alle anderen Funktionen machst Du mit Makros: Verbindung zur DB aufbauen, SQL-Befehle absetzen und Resultsets selbst auswerten (in Writer oder Dialogen die Daten ausgeben). INSERTs gehen natürlich auch.
Dafür meinte ich die Forensuche zu nutzen, siehe mal: viewtopic.php?f=2&t=31173#p125197keyboard-billy hat geschrieben:Die Sache mit dem angepassten Icon funzt. Das ist schon mal ein guter Schritt.
Den Punkt "Makros starten von der Kommandozeile" hab ich in der Hilfe leider nicht gefunden. Vielleicht kannst Du mir das noch näher erklären.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Re: Makro Automatisch Starten beim öffnen einer Base DB
Hallo Leute...
Danke für die viele Hilfe, aber jetzt mit Openoffice 3.2 geht es auch mit BASE wie es bei Writer oder Calc geht.
Sie haben es entlich realisiert.
Gruß Stefan
Danke für die viele Hilfe, aber jetzt mit Openoffice 3.2 geht es auch mit BASE wie es bei Writer oder Calc geht.
Sie haben es entlich realisiert.
Gruß Stefan
-
- ***
- Beiträge: 53
- Registriert: Mo, 27.11.2006 15:17
- Wohnort: Nürnberg
- Kontaktdaten:
Re: Makro Automatisch Starten beim öffnen einer Base DB
Also irgendwie versteh ich denn Sinn nicht. Wenn ich eine ODB-Datei habe, so sind darinkomma4 hat geschrieben:Die ODB brauchst Du dann nur zur Registrierung der Datenbank.
Alle anderen Funktionen machst Du mit Makros: Verbindung zur DB aufbauen, SQL-Befehle absetzen und Resultsets selbst auswerten (in Writer oder Dialogen die Daten ausgeben).
- Datenbank
- Makros
- Dialoge
- Abfragen (... soweit im Browserfenster definiert)
Natürlich ist mir vollkommen klar, dass ich SQL/DML/DCL auch per Makro definieren und ausführen kann.
Aber wozu bitte soll ich dann in Writer Daten ausgeben? Wie oben bereits aufgelistet, kann ich Dialoge in ein ODB-Dokument einbinden.
(... übrigens auch das Icon zum Starten von Makros)
Eine andere Sache wär's wenn ich die Makros und Dialoge Global ablegen würde - also unabhängig vom Dokument. Das ist aber wiederum unpraktikabel wenn ich das "Paket" Datenbank/Makros/Abfragen/Dialoge mittels eines USB-Sticks auf einem anderen Rechner verwenden möchte.
Darum noch mals kurz festgehalten: "Autostart" von Makros (wie es schon seit Jahren unter M$ Office funktioniert) geht unter oOO einfach nicht - jedenfalls nicht bezogen auf ein Dokument/bzw. Dokument öffen-> Makro startet automatisch.
Makro (und dahinter verborgene Dialogaufrufe) starten geht mittels "angepasstem Icon" in der Symbolleiste.
Greetz,
Billy
... im Prinzip ist alles einfach. Vorausgesetzt man weiss, wie's geht!
Re: Makro Automatisch Starten beim öffnen einer Base DB
Hallo Billy,
Auch wenn Du das Formular mal schliesst und anschliessend wieder öffnest erscheint die MsgBox.
Vielleicht habe ich aber Dein Problem doch nicht richtig verstanden und es trägt nicht zur Lösung bei. Dann sorry.
Jürgen
Ich habe mal eine Beispileldatei erstellt wo beim öffnen der Datenbank automatisch ein Formular geöffnet wird. Beim öffnen des Formulars wird dann eine MsgBox aufgerufen.keyboard-billy hat geschrieben:Darum noch mals kurz festgehalten: "Autostart" von Makros (wie es schon seit Jahren unter M$ Office funktioniert) geht unter oOO einfach nicht - jedenfalls nicht bezogen auf ein Dokument/bzw. Dokument öffen-> Makro startet automatisch.
Auch wenn Du das Formular mal schliesst und anschliessend wieder öffnest erscheint die MsgBox.
Vielleicht habe ich aber Dein Problem doch nicht richtig verstanden und es trägt nicht zur Lösung bei. Dann sorry.
Jürgen
- Dateianhänge
-
- Neue Datenbank.odb
- (12.63 KiB) 929-mal heruntergeladen
Software hat keinen Verstand - benutze deinen eigenen...!
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
-
- ***
- Beiträge: 53
- Registriert: Mo, 27.11.2006 15:17
- Wohnort: Nürnberg
- Kontaktdaten:
Gelöst: Makro Automatisch Starten beim öffnen einer Base DB
Jawoll, genau! Das isses gewesen. Daaaaanke für das Beispiel.turtle47 hat geschrieben:Vielleicht habe ich aber Dein Problem doch nicht richtig verstanden und es trägt nicht zur Lösung bei.
Aber ich hätte da noch eine klitzekleine Anmerkung: oOO ist in einer Sache verdammt hinterlistig!
Wenn man die Makrozuordung unter "Extras"->"Anpassen"->"Ereignisse" vornimmt, bekommt man die Dialogbox "Anpassen" mit dem Register "Ereignisse" angezeigt. Mit dem Schalter "Zuweisen: "<Makro...> bekommt man die Dialogbox "Dialog-Selektor" angezeigt - und zwar inklusive der Makros des momentan aktiven, geöffneten Dokuments.
So war vermutlich Deine Vorgehensweise.
Ich hab das vorher auf einen anderen Weg versucht und bin genau hier gescheitert:
Geht man aber den anderen Weg über "Extras"->"Makros"->"Makros verwalten"->"OpenOffice.Org Basic ..." öffnet sich die Dialogbox "OpenOffice.Org Basic Makros". Hier stehen ebenfalls die Makros, die in das Dokument eingebunden zur Auswahl.
Ich habe hier zunächst das Makro ausgewählt, danach den Schalter <Zuordnen> gedrückt und dann ebenfalls die Dialogbox "Anpassen" mit dem Register "Ereignisse" erhalten. Hier jedoch werden die eingebunden Makros des momentan aktiven, geöffneten Dokuments nicht angezeigt.
Vielleicht habe ich da was falsch verstanden bzw. gemacht oder es ist tatsächlich eine "Programmschwäche"
Jedenfalls hast Du mir heute erneut hervorragend weitergeholfen. Vielen Dank für Deine Mühe.
Schönes Wochenende noch & Greetz,
Billy
... im Prinzip ist alles einfach. Vorausgesetzt man weiss, wie's geht!
Re: Makro Automatisch Starten beim öffnen einer Base DB
Vielen Dank auch von mir.
Das hat mir auch schon einiges gebracht.
Aber nun bleibt noch eine Sache übrig... Wenn ich das "Startformular" wieder schließe, sehe ich dabei immer noch Base an sich mit allen Formularen im Hintergrund. Könnte man es so gestalten, dass wenn man das "Startformular" dann wieder schließt (ist bei mir die ganze Zeit im Hintergrund offen), dass sich dann auch die komplette Datenbank schließt?
Liebe Grüße
Swichi
Das hat mir auch schon einiges gebracht.
Aber nun bleibt noch eine Sache übrig... Wenn ich das "Startformular" wieder schließe, sehe ich dabei immer noch Base an sich mit allen Formularen im Hintergrund. Könnte man es so gestalten, dass wenn man das "Startformular" dann wieder schließt (ist bei mir die ganze Zeit im Hintergrund offen), dass sich dann auch die komplette Datenbank schließt?
Liebe Grüße
Swichi
Re: Makro Automatisch Starten beim öffnen einer Base DB
Verweise nun als Antwort mal hier drauf:
viewtopic.php?f=8&t=38032
viewtopic.php?f=8&t=38032