Seite 1 von 2
Formular über Button starten [gelöst]
Verfasst: So, 09.10.2011 15:47
von maibaum
Hallo,
ich würde gerne ein Formular mittels eines Buttons vom Desktop starten. Dies würde das Starten eines nicht so versierten Benutzers erheblich erleichtern.
Ist dies möglich und wenn ja wie??
Grüße
Maik
Re: Formular über Button starten
Verfasst: So, 09.10.2011 18:51
von F3K Total
Hallo Maibaum,
wie man einen speziellen Button kreiert, kann ich nicht sagen, aber was hältst Du von diesem Vorschlag:
Wenn Dein Formular ein eigenes Writer-Formular ist, kannst Du einfach eine Verküpfung auf den Desktop legen, zumindest unter Windows.
Wenn Dein Formular sich in einer Base.odb befindet, kannst Du von dieser eine Verküpfung auf den Desktop legen und Dein Formular über folgendes Makro automatisch öffnen lassen
Code: Alles auswählen
sub open_form
DIM DatabaseContext AS OBJECT
DIM Datenquelle AS OBJECT
DIM Verbindung AS OBJECT
Dim oParms(1) As New com.sun.star.beans.PropertyValue
oCon = ThisDatabaseDocument.CurrentController
If NOT ( oCon.isConnected() ) Then oCon.connect()
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
Datenquelle = DatabaseContext.getByName(ThisDatabaseDocument.getLocation())
Verbindung = Datenquelle.GetConnection("","")
oDoc = ThisComponent.getformdocuments.getbyname("Name_des_Formulares")
if not isnull (oDoc.getComponent) then
odoc.open
else
oDocname=oDoc.name
oParms(0).name="OpenMode"
oParms(0).value="open"
oParms(1).name="ActiveConnection"
oParms(1).value=Verbindung
oFormDocs=ThisComponent.FormDocuments
oFormDocs.loadComponentFromURL(oDocname, "", 0, oParms())
endif
end sub
Dazu mußt Du nur noch den Namen des zu öffnenden Formulares statt
Name_des_Formulares in das Makro einsetzen, und das Makro unter Extras/Anpassen/Ereignisse dem Ereignis
Dokument öffnen zuordnen
Viel Erfolg,
Gruß R
Re: Formular über Button starten
Verfasst: So, 09.10.2011 20:06
von maibaum
Hi,
nochmal zum Verständnis:
Ich lege eine Verknüpfung der Datenbank auf den Desktop, und hinterlege beim Formular das besagte Makro?? Oder muss vom Formular eine Verknüpfung auf den Desktop gelegt werden??
@edit
also wie von mir hier beschrieben, klappt es nicht...
Grüße
Maik
Re: Formular über Button starten
Verfasst: So, 09.10.2011 20:17
von komma4
Geht doch viel einfacher als "
Externes Formular"
Dann legst Du eine Desktop-Verknüpfung auf die ODT an - fertig
Re: Formular über Button starten
Verfasst: So, 09.10.2011 20:28
von maibaum
Hi,
sorry Winfried, aber das versteht kein Mensch was dort gemacht werden muss. Wo bitte finde ich in dem nun erzeugten Textdokument die genannten Befehle etc....
Grüße
Maik
Re: Formular über Button starten
Verfasst: So, 09.10.2011 20:51
von komma4
maibaum hat geschrieben:Wo bitte finde ich in dem nun erzeugten Textdokument die genannten Befehle etc....
ooowiki hat geschrieben:Öffnen Sie das Dokument und schalten Sie die Symbolleiste Formular Entwurf ein. Schalten Sie um in den Bearbeitungsmodus
Öffnen Sie den Dialog Formular... im Kontextmenü eines Kontrollelements und wechseln Sie auf die Seite "Daten". Kopieren Sie den Inhalt aus "Inhalt" (mit STRG+C) und öffnen dann die Liste "Datenquelle". Wählen Sie dort die DatenQuelle, d.h. den Namen der registrierten Datenbank, aus dem Sie zuvor die Kopie des Formulars erstellt haben. Nun tragen Sie (mit STRG+V) den zuvor kopierten Inhalt wieder in das Listenfeld "Inhalt" ein – oder wählen den Eintrag aus der Liste aus.
Welchen der Schritte verstehst Du nicht?
Re: Formular über Button starten
Verfasst: So, 09.10.2011 21:51
von maibaum
Hi,
sorry, bissel reinhängen und es klappt jetzt einwandfrei.
Herzlichen Dank...
Grüße
Maik
Re: Formular über Button starten
Verfasst: So, 09.10.2011 21:52
von F3K Total
Hallo Maibaum,
wenn ich es richtig verstanden habe, hast Du jetzt ein externes Formular.
Das meinte ich mit:
Wenn Dein Formular ein eigenes Writer-Formular ist ...
Das externe Formular ist mit der Datenbank verknüpft.
Egal ob du nun im internen oder externen Formular Daten in die Datenbank eingibst, es sind die selben Daten.
Änderst Du aber das Layout des externen Formulares, bleibt das interne unverändert und umgekehrt.
War es das, was Du meintest?
Gruß R
Re: Formular über Button starten [gelöst]
Verfasst: So, 09.10.2011 22:40
von maibaum
Hi,
leider gibt es die folgende Funktion nicht mehr im 3.3
Formular gegen Änderungen schützen
das -wie oben beschreiben kopierte Formular- verhält sich wie ein normales Textdokument, d.h. der Cursor steht nach dem Öffnen im Textbereich und es können Zeichen eingegeben werden. Um dies zu verhindern wählen Sie Extras→Optionen...→OpenOffice.org→Sicherheit→Optionen für die gemeinsame Benutzung des Dokuments und setzen einen Haken bei "Dieses Dokument schreibgeschützt öffnen"
Jemand ne idee???
Grüße
Maik
Re: Formular über Button starten [gelöst]
Verfasst: Mo, 10.10.2011 05:49
von F3K Total
Jupp:
Datei/Eigenschaften/Reiter Sicherheit ...
Gruß R
Re: Formular über Button starten [gelöst]
Verfasst: Mo, 10.10.2011 10:49
von Olek2
Hi,
Ich habe mir auch das Formular auf den Desktop verlinkt nur leider funktionieren meine Makros zum Berichte erstellen etc. mit der Desktop version nicht.
Weiss jemand woran das liegt?
Re: Formular über Button starten [gelöst]
Verfasst: Mo, 10.10.2011 16:49
von gogo
gibt's auch eine Fehlermeldung oder macht das Programm einfach gar nichts
g
Re: Formular über Button starten [gelöst]
Verfasst: Mo, 10.10.2011 17:25
von komma4
Olek2 hat geschrieben:leider funktionieren meine Makros zum Berichte erstellen etc. mit der Desktop version nicht.
An der eingestellten Makrosicherheit des Dokuments?
Re: Formular über Button starten [gelöst]
Verfasst: Di, 11.10.2011 09:42
von Olek2
Moin,
Ja es gibt eine Fehlermeldung die lautet:
-----------------------------------------------------------------------------------------------------
Ein Scripting Framework Fehler trat während der Ausführung von Basic script
vnd.sun.star.script:Miet.Module1.openreport?language=Basic&Location-document
auf.
Meldung: The following Basic script could not be found:
libary: 'Miet'
module: 'Module1'
method: 'openReport'
location: 'document'
---------------------------------------------------------------------------------------------------
Ich hab mich an den hier beschriebenen Weg gehalten den link zu erstellen die Daten sind im Formular auch abzurufen.
Das Makro funktioniert wie gesagt auch wenn ich Base normal öffne.
Eine extra Makro Sicherheit hab ich jetzt nicht gefunden im Reiter Sicherheit oder muss ich da woanders gucken?
Ich benutze OO 3.3.0
Re: Formular über Button starten [gelöst]
Verfasst: Di, 11.10.2011 09:58
von gogo
Ich habe mir auch das Formular auf den Desktop verlinkt...
d.h., Du hast es als eigenständiges (Writer)Dokument ausserhalb der Datenbank gespeichert? Wenn ja, dann musst Du auch in diesem Dokument dein Makro speichern. Solange es in der Base Datei versteckt ist (und das Formular öffnet ja die Base-Datenbank nicht) wird es nicht gefunden werden, da die Bibliothek in der es liegt erst beim Start der Base-Datei geladen wird!
g