Datenbank in einem bestimmten Formular öffnen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Datenbank in einem bestimmten Formular öffnen

Re: Datenbank in einem bestimmten Formular öffnen

von NTClient » Do, 26.08.2010 20:53

Macht doch das Formular mit dem Formular-Navigator aus OOWriter. Dann die Writer-Datei in den Autostart - fertig!
Gruß Bernd!

Re: Datenbank in einem bestimmten Formular öffnen

von tba2001 » Do, 26.08.2010 13:52

Hat noch jemand das Beispiel und könnte es mir noch per Email schicken?
tba2001@web.de

Vielen Dank

Re: Datenbank in einem bestimmten Formular öffnen

von Tino.806 » Mi, 08.07.2009 19:33

Hallo eBayer

Danke für deine E-Mail

Wie in Früheren Anfragen Mitgeteilt bin ich ein Anfänger in Sachen OpenOffice.

Habe folgende Frage
Was muß ich machen das meine Datenbank auch das gewünschte Formular beim Start hervorbringt.

Name der Datenbank: Adressen Verwaltung
Name des Formulars: Verwaltung darüber Steuere ich meine Eingabe Formulare und Abfragen.

Gruß Tino

Re: Datenbank in einem bestimmten Formular öffnen

von Tino.806 » Mi, 08.07.2009 10:07

Hallo eBayer

Wenn es geht, vielen Dank im vorraus.

E-Mail tino.806@oleco.net

Gruß Tino

Re: Datenbank in einem bestimmten Formular öffnen

von eBayer » Di, 07.07.2009 20:03

Hallo Tino,
das ist halt das Problem..... leider ist hier im Forum die Kapazität pro Mitglied beschränkt. Dadurch ist das von Dir gewünschte Beispiel hier verschwunden.
Ich versuche nun, das Beispiel nochmal zu finden und hochzuladen......
Ergebnis: "Das Kontingent für Dateianhänge ist bereits vollständig ausgenutzt."
Tut mir leid! Wenn Du willst, kann ich es Dir per Mail schicken. Wohin?
Gruß eBayer

Re: Datenbank in einem bestimmten Formular öffnen

von eBayer » Mi, 10.06.2009 22:04

es tut richtig gut zu lesen, daß meine Testanwendung nicht für die Katz war.
Gruß eBayer

Re: Datenbank in einem bestimmten Formular öffnen

von Snoopy » Mi, 10.06.2009 12:54

eBayer hat geschrieben:...- Menu ausblenden
- Symbolleisten ausblenden
- Fenstergröße automatisch anpassen...

...- Anleitung Schritt für Schritt...
Hi Leutz,

was man hier so alles finden kann :D , genau so etwas hat mir gefehlt.

Dank der guten Anleitung/Makros von eBayer ist es kein Problem gewesen eine DB so zu erstellen das sich nur das Formular in OOoWrite öffnet, ohne Menü & Symbolleisten kann sich der Anwender direkt auf die Daten stürzen.

Diese Version (Anleitung.zip) funktioniert für Linux & Windows :D .

Gruß, Hermann

Re: Datenbank in einem bestimmten Formular öffnen

von eBayer » Sa, 28.03.2009 17:32

Hallo Ute,
hier kommt nun mein versprochenes Beispiel mit einigen zusätzlichen Leckereien.
- Menu ausblenden
- Symbolleisten ausblenden
- Fenstergröße automatisch anpassen
und natürlich das externe Formular!
Alles dokumentiert in einer beigefügten Anleitung.
In dem beiliegenden Zip-Archiv befinden sich 3 Dateien:
- Anleitung Schritt für Schritt
- externes Formular als Beispiel
- Datenbankcontainer passend zum externen Formular

Das beigefügte Programm wird aufgerufen durch Doppelklick auf das Formular "Verkehr.odt".
Verkehr.odt seinerseits bedient sich der Daten in Verkehrsmittel.odb
Du kannst getrost alles mit dem Testprogramm ausprobieren.... es läuft stabil.
Ich habe es unter Vista mit oOffice 3.01 entwickelt und getestet.
Es ist alles nicht so schlimm, wie es aussieht.... ich habe vor ca. 3 Monaten ernsthaft mit ooBase angefangen.
Dabei war mir das Datenbankbuch Buch von Thomas Krumbein eine große Hilfe.
Vieles habe ich im internationalen ooForum gefunden und natürlich auch hier im Forum.

Viel Spaß und gaaanz langsam - immer mit der Ruhe
eBayer

Re: Datenbank in einem bestimmten Formular öffnen

von utepf » Sa, 28.03.2009 14:39

Hallo Leute,
mensch seid ihr alle lieb, ihr arbeitet wirklich hartnäckig an meinem Problem. Ich bin euch so dankbar.
Wäre super schön, wenn ebayer mir was basteln könnte.
Er hat das Problem richtig erkannt.
Es ist eine Mitgliederdatenbank für den Verein meiner Mutter.
Ich hab ihr vor Jahren mal diese DB gemacht, aber da wir jetzt alle in Richtung Mac umziehen, ist halt jetzt schluss mit Access und ich baue grad alles um.
Ich will ihr aber auch nicht unbedingt wegen dem Datenbänkchen Windows auf den Mac installieren.

Wenn ich mein altes Makro anschaue ist das super einfach
1. Zeile: Aktion: Echo, Aktionsargumente: ja
2. Zeile: Aktion: Sanduhr, Aktionsargumente: ja
3. Zeile: Aktion: Maximieren
4. Zeile: Aktion: ÖffnenFormular und hier waren ein paar Aktionsargumente eingetragen

Formularname, Ansicht, Fenstermodus

aber ganz ehrlich, ich habe das schon damals von einer bestehenden Datenbank abgeschrieben, die ein Superuser unserer damaligen Abteilung gebaut hat.
Ich kann halt nur abschreiben.

Liebe Grüsse
Utepf

Re: Datenbank in einem bestimmten Formular öffnen

von utepf » Sa, 28.03.2009 14:39

Hallo Leute,
mensch seid ihr alle lieb, ihr arbeitet wirklich hartnäckig an meinem Problem. Ich bin euch so dankbar.
Wäre super schön, wenn ebayer mir was basteln könnte.
Er hat das Problem richtig erkannt.
Es ist eine Mitgliederdatenbank für den Verein meiner Mutter.
Ich hab ihr vor Jahren mal diese DB gemacht, aber da wir jetzt alle in Richtung Mac umziehen, ist halt jetzt schluss mit Access und ich baue grad alles um.
Ich will ihr aber auch nicht unbedingt wegen dem Datenbänkchen Windows auf den Mac installieren.

Wenn ich mein altes Makro anschaue ist das super einfach
1. Zeile: Aktion: Echo, Aktionsargumente: ja
2. Zeile: Aktion: Sanduhr, Aktionsargumente: ja
3. Zeile: Aktion: Maximieren
4. Zeile: Aktion: ÖffnenFormular und hier waren ein paar Aktionsargumente eingetragen

Formularname, Ansicht, Fenstermodus

aber ganz ehrlich, ich habe das schon damals von einer bestehenden Datenbank abgeschrieben, die ein Superuser unserer damaligen Abteilung gebaut hat.
Ich kann halt nur abschreiben.

Liebe Grüsse
Utepf

Re: Datenbank in einem bestimmten Formular öffnen

von turtle47 » Sa, 28.03.2009 14:25

Hallo Zusammen,

also ich bin auch für die Variante das externe Formular direkt aufzurufen, anstelle erst die Datenbank und dann das Formular.

Folgendes trägt zwar nicht direkt was zum aktuellen Thema bei, ist aber vielleicht für den ein oder anderen interessant.
Vor kurzem habe ich für jemanden eine kleine Datenbank erstellt, sprich eine Tabelle und ein Formular, welche er auf einem USB-Stick mitführt. Da ist natürlich das Problem vorprogrammiert, dass sich der Laufwerksbuchstabe des Laufwerkes ändern kann. Dazu habe ich dann ein kleines Makro geschrieben, welches die Verbindung zwischen Datenbank und Formular herstellt.
Voraussetzung ist aber, dass die die Datenbank und das Formular in einem Ordner liegen. Die Verbindung wird über das Betätigen des Button "Connect DB" hergestellt.

Code: Alles auswählen

Dim StickDirectory as String
Dim oDoc as Object

Sub Anmelden
	oDoc = thisComponent
	GlobalScope.BasicLibraries.loadLibrary("Tools")
	StickDirectory = DirectoryNameoutofPath(oDoc.URL,"/")
	GlobalScope.BasicLibraries.loadLibrary("Tools")
	oForm = oDoc.drawpage.forms.getbyindex(0)
	Button = oForm.getByName("PushButton")'Button für Statusbericht
	Button.enabled = false
	Button1 = oForm.getByName("PushButton1")'Connect Button
	Button1.enabled = false
	Button1.Label = "Wait..."
	dim document   as object
	dim dispatcher as object

	document   = ThisComponent.CurrentController.Frame
	dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
	dim args1(0) as new com.sun.star.beans.PropertyValue
	Wait 300
	args1(0).Name = "SwitchControlDesignMode"
	args1(0).Value = true
	dispatcher.executeDispatch(document, ".uno:SwitchControlDesignMode", "", 0, args1())
	Wait 300
	oForm.DataSourceName = StickDirectory & "/CRM.odb"
		
	Wait 300
	args1(0).Name = "SwitchControlDesignMode"
	args1(0).Value = false
	dispatcher.executeDispatch(document, ".uno:SwitchControlDesignMode", "", 0, args1())
	
	'>>> Option: Dialog für Statusmeldung anzeigen <<<
	'Dialoglibraries.Loadlibrary("Standard")
	'Dlg_Wait = CreateUnoDialog(Dialoglibraries.Standard.Dialog2)
	'Dlg_Wait.setVisible(true)
	'Wait 2000
	'Dlg_Wait.setVisible(false)
	
	Button = oForm.getByName("PushButton")
	Button.enabled = True
	Button1 = oForm.getByName("PushButton1")
	Button1.enabled = True
	Button1.Label = "Connect DB"
	wait 500
	odoc.store()
End Sub
Schöne Grüsse.

Jürgen

Re: Datenbank in einem bestimmten Formular öffnen

von eBayer » Sa, 28.03.2009 13:58

Hallo Komma4,
super, wie Du mit einer - wenn auch nicht bös gemeinten - Kritik umgehst. (ist nicht zynisch gemeint)
So kann man sich wirklich konstruktiv austauschen.
Trotz allem.... es genügt nicht, zumindest in meinem OO 3.01 unter Vista, daß ich das Makro unter "Meine Makros - Standard" einbaue.
Da kann sonstwas drin stehen und es wird nicht ausgeführt. Wenn ich allerdings das Makro mit dem Programmstart von OO verbinde, wird es auch ausgeführt. Das weiß ein Anfänger nicht! Doch auch dieses ist nur die halbe Lösung.....
1. wird nun das Programm bei jedem Aufruf von OO gestartet.
2. selbst wenn mich das nicht stört, weil ich sonst nix mit OO mache, ist das nicht ok, weil:
- erst das Programm (meine kleine Anwendung) gestartet wird
- dann legt sich die IDE von ooBase über das Programm und versteckt alles
3. wenn mich auch das nicht stört, muß ich nach Beendigung der Anwendung zusätzlich manuell ooBase schließen
Das kann es wirklich nicht sein!
Viel besser ist doch die in diesem Thread bereits von einem anderen Forenmitglied vorgeschlagene Lösung über ein externes Formular. Das hat zwar auch ein paar Tücken, aber damit kann man gut leben. Ich bin grad dabei, eine kleine Musterlösung zu erstellen, welche mit geringem Aufwand die Anwendung wirklich als freistehende Applikation erscheinen läßt. Zusätzlich werden darin auch die Menüleisten ausgeblendet sein, sodaß ein unbedarfter Anwender damit nichts mehr verbiegen kann. Denke, daß ich das Beispielprogramm noch heute nachmittag hier hereinstellen kann.
Gruß und weiter so
eBayer

Re: Datenbank in einem bestimmten Formular öffnen

von komma4 » Sa, 28.03.2009 11:20

eBayer hat geschrieben:aber eine leichte Kritik möchte ich damit schon loswerden.
Gruß eBayer
Vollkommen richtig.

Ich entschulige mich bei utepf und allen anderen, die ich mit dieser schnoddrigen Antwort abgespeist habe.


Was ich nicht bedachte, was hier fehlt....

Irgendeine Anleitung !

An diesem Freitagmittag befand ich mich in einem emotionalen Antwortstress (und Zeitdruck-aber das war mein Problem) und habe auch zuviel voraus gesetzt.


Und ja: jeder Code den ich poste oder sonstwo veröffentliche ist von mir getestet, zumindest zu diesem Zeitpunkt in einer dokumentierten Form (OOo-Version, DB-Komponente [int.HSQLDB, MySQL, PostgreSQL], Betriebssystem) lauffähig und meist im täglichen Einsatz.


Im vorliegenden Fall ist das Codestück aus einer Antwort in einem anderen Forum. Ich versäumte es bislang eine Doku zu erstellen ...


Mein Vorgehen:
* neues Modul in der STANDARD-Bibliothek anlegen, Code reinkopieren
* aktuellen Pfad zu einer Testdatei (ODB mit interner HSQLDB) angepasst
* Name des Formulars angepasst
Makro läuft unter 3.0.1/Linux
Das Fenster des Formulars öffnet sich (in der zuletzt gespeicherten Grösse) im Vordergrund der laufenden OOo-Anwendung.


Ich hoffe, dass alle Lesenden damit nun klar kommen.


Hilft das?

Re: Datenbank in einem bestimmten Formular öffnen

von keksi1970 » Sa, 28.03.2009 10:54

hi,

warum lagerst du das Formular nicht aus Base aus (Kopie speichern unter) und schon startest du einfach nur das Formular selbst (DB wid im Hintergrund geöffnet)

Darfst nur nicht vergessen, die Verknüpfungen zur Datenbank zu aktualisieren.

lg
Andreas

Re: Datenbank in einem bestimmten Formular öffnen

von eBayer » Fr, 27.03.2009 19:52

@ Komma4
Hallo Komma,
ich habe das mal interessehalber versucht, nachzuvollziehen....
Bin zwar noch nicht vollkommen fit mit ooBase, aber wenn Du einem Anfänger solch einen Weg vor die Füße schmeißt, sollte das was Du anbietest auch funktionieren. Woher soll OO wissen, daß Dein Startmakro bei Doppelklick auf die ODB-Datei ausgeführt werden soll?
Habe es auch mal mit Extras - Anpassen - Programmstart versucht, das Makro als Startmakro zu hinterlegen. Dann startet das Programm zwar wie gewünscht, wird aber gleich wieder von der ooBase-Oberfläche in den Hintergrund geschoben. Aber genau DIE sollte ja vollkommen unterdrückt werden, denn sonst macht der gesamte Autostart keinen Sinn.
Hast Du jemals dieses Makro in der beschriebenen Form eingesetzt?
Achso, ich benutze die Version 3.01 unter Vista.
Mein Kommentar ist sicher nicht bös gemeint, aber eine leichte Kritik möchte ich damit schon loswerden.
Gruß eBayer

Nach oben