Guten Morgen,
Ich habe mir eine Datenbank mit Base erstellt.
Ich möchte aus einem Formular ein anderes Formular mittels Button öffnen.
Ich habe leider nur Lösungen gefunden, Formulare auserhalb eines Dokumentes zu öffnen. Ich möchte aber ein Formular öffnen lassen, welches in der Datenbank drinnen ist, unter Formulare.
Danke schonmal
MFG Arogarth
Formular per Button öffnen
Moderator: Moderatoren
reicht es wenn ich ohne weitere Erläuterungen einen Code poste - Folgendes sollte laufen.
Gruß
Stephan
Code: Alles auswählen
Sub form_base_oeffnen()
formularname = "xTabelle1"
Dim arg(1) As New com.sun.star.beans.PropertyValue
x = StarDesktop.CurrentComponent.getFormDocuments().getElementNames()
For i = LBOUND(x()) To UBOUND(x())
if x(i) = formularname Then
context = CreateUnoService("com.sun.star.sdb.DatabaseContext")
db = context.getByName(StarDesktop.CurrentComponent.GetLocation)
verb = db.getConnection("", "")
arg(0).Name = "OpenMode"
arg(0).Value = "open"
arg(1).Name = "ActiveConnection"
arg(1).Value = verb
StarDesktop.CurrentComponent.getFormDocuments().loadComponentFromURL(x(i), "", 0, arg())
Exit Sub
End If
Next i
End Sub
Gruß
Stephan
Hallo Stephan,
der Thread ist schon ein Monat her, aber meine Frage passt hier sehr gut rein.
Ich habe ein Formular erstellt, mit mehreren Schaltflächen "Puschbutton" und ich möchte nun als Aktion "Formular öffnen".
Diese option funktioniert nicht und leider hab ich auch keinen blasen Schimmer was dieser Quellcode von dir etwas weiter oben zu bedeuten hat.
Muss ich ein Makro schreiben oder diesen Code dort reinkopieren und die Formulardatei umbennen.
Aber selbst wenn ich das mache, wie rufe ich den Code ab bzw. führe ich die Aktion aus.
Vielleicht kann mir Stephan oder auch jemand anders helfen.
Kurz gesagt, wie öffne ich in einem Forumal ein Formular aus der gleichen Datenbank.
der Thread ist schon ein Monat her, aber meine Frage passt hier sehr gut rein.
Ich habe ein Formular erstellt, mit mehreren Schaltflächen "Puschbutton" und ich möchte nun als Aktion "Formular öffnen".
Diese option funktioniert nicht und leider hab ich auch keinen blasen Schimmer was dieser Quellcode von dir etwas weiter oben zu bedeuten hat.
Muss ich ein Makro schreiben oder diesen Code dort reinkopieren und die Formulardatei umbennen.
Aber selbst wenn ich das mache, wie rufe ich den Code ab bzw. führe ich die Aktion aus.
Vielleicht kann mir Stephan oder auch jemand anders helfen.
Kurz gesagt, wie öffne ich in einem Forumal ein Formular aus der gleichen Datenbank.
Hi Stephan,Stephan hat geschrieben:reicht es wenn ich ohne weitere Erläuterungen einen Code poste - Folgendes sollte laufen.
GrußCode: Alles auswählen
Sub form_base_oeffnen() formularname = "xTabelle1" Dim arg(1) As New com.sun.star.beans.PropertyValue x = StarDesktop.CurrentComponent.getFormDocuments().getElementNames() For i = LBOUND(x()) To UBOUND(x()) if x(i) = formularname Then context = CreateUnoService("com.sun.star.sdb.DatabaseContext") db = context.getByName(StarDesktop.CurrentComponent.GetLocation) verb = db.getConnection("", "") arg(0).Name = "OpenMode" arg(0).Value = "open" arg(1).Name = "ActiveConnection" arg(1).Value = verb StarDesktop.CurrentComponent.getFormDocuments().loadComponentFromURL(x(i), "", 0, arg()) Exit Sub End If Next i End Sub
Stephan
ich hab mich durch die Hilfe und diverse Seiten geackert und bin schon weiter.
Makro geschrieben wie von dir gecoded, eingefügt, als Aktion ausgeführt!
Kommt aber dann eine Fehlermeldung:
BASIC-Laufzeitfehler.
Eigenschaft oder Methode nicht gefunden
er zeigt im Marko einen roten Pfeil bei dieser Zeile an:
x = StarDesktop.CurrentComponent.getFormDocuments().getElementNames()
Hab den Code von dir genommen also makro eingefügt in Base und gespeichter.
Lediglich diese Zeile auf formularname = "fm_abrechnung" geändert.
Weisst du einen rat?