BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Formular über Button aufrufen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
RobertG
Beiträge: 2732
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Formular über Button aufrufen

Beitrag von RobertG » Di 3. Jan 2017, 07:53

Hallo Martias,

Du liest in Deinem Makro gar keine Variablen aus. So kannst Du natürlich auch nicht weiter geben.

Start des Makros:

Code: Alles auswählen

SUB openForm(oEvent AS OBJECT)
nutze ich eigentlich nur noch. Dann muss ich mich nicht um irgendwelche Ebenen in Formularen kümmern. Der Button gehört in das Formular (oder Unterformular), aus dem Du Daten haben willst.

Code: Alles auswählen

oForm = oEvent.Source.Model.Parent
Damit hast Du das Formularobjekt und kannst jetzt auf die Felder im Formular zugreifen. Das Meiste, was Du irgendwie in Makros brauchst, liegt im Model-Objekt.

Code: Alles auswählen

stVName = oForm.getByName("txtVorname").getCurrentValue()
Hier gibt es verschiedene Methoden, um Daten auszulesen. Die obige greift auf das Formularfeld zu. Du kannst aber auch direkt auf die Felder zugreifen, die in der Datengrundlage für das Formular stecken. Siehe dazu das Handbuch.
Jetzt willst Du das neue Formular öffnen - das passiert ja sicher schon korrekt. Anschließend musst Du in diesem Formular auf die Felder zugreifen, in die Du das Ganze rein schreiben willst:

Code: Alles auswählen

oDoc = thisComponent
oDrawpage = oDoc.Drawpage
oForm = oDrawpage.Forms.getByName("MainForm")
oFeld = oForm.getByName("Hier soll der Vorname rein")
oFeld.BoundField.UpdateString(stVName)
Damit hast Du den Vornamen in dem Feld des neuen Formulars, in das er rein soll. Die Deklaration sämtlicher Variablen habe ich ausgelassen. Das sollte aber eigentlich dazu gehören ...

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Martias
Beiträge: 5
Registriert: Mi 10. Aug 2016, 13:25

Re: Formular über Button aufrufen

Beitrag von Martias » Di 10. Jan 2017, 13:09

Vielen lieben dank Robert.

Ich schlage mich, was Libre angeht, immer noch sehr mit den Grundlagen herum.
Deine Erklärung hat aber nun wirklich schon sehr zum allgemeinen Verständnis beigetragen.
Danke nochmals

richgsm
Beiträge: 3
Registriert: Do 13. Jul 2017, 16:38

Re: Formular über Button aufrufen

Beitrag von richgsm » Do 13. Jul 2017, 16:54

Mansaylon hat geschrieben:
Fr 5. Feb 2016, 20:02
Tataaaa..... Makro Sicherheit war zu hoch.
Und es läuft.

Vielen Dank für die Hilfe und Geduld.
Hallo Mansaylon

Du hast es geschafft - ich noch nicht :-(
Habe mich auch durch alle Foren gewühlt, deutsch - englisch----

Ich möchte ein Formular öffnen aus einem anderen Formular öffnen (ich gebe Kunden ein und möchte dan per click das Formular "Retour" öffnen, in dem ich bei Warenrücksendungen ein paar Infos eingeben kann)
Mit Formular meine ich unter der Abteilung Formulare ein erstelltes Formular, keine Tabelle oder Writer document

Ich das Makro nun in der Datenbank gespeichert, die Sicherheit auf niedrig gesetzt

ABER ES TUT SICH NICHTS ---frust

So sieht es nun aus:

Sub Tabellenformular_oeffnen
ThisDatabaseDocument.FormDocuments.getByName( "Retour" ).open
End Sub

Aber nichts passiert.

Kannst Du vieleicht Deine Step by Step Anleitung durchfunken?

Danke
Rich

RobertG
Beiträge: 2732
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Formular über Button aufrufen

Beitrag von RobertG » Fr 14. Jul 2017, 12:27

Hallo Rich,

ich habe Dein Makro genommen, eben kurz in eine kleine Beispieldatenbank eingebaut und ausgeführt - geht. Siehe die Datei im Anhang.
Öffne das Formular "Personen" und drücke den Button.
Das zweite Formular wird ebenfalls geöffnet.
Jetzt wäre es natürlich sinnvoll, das erste Formular anschließend zu schließen (mit close).

Gruß

Robert
Dateianhänge
FormularNavigation.zip
Formularnavigation von einem Formular zum nächsten - einfache Variante
(18.1 KiB) 149-mal heruntergeladen
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

richgsm
Beiträge: 3
Registriert: Do 13. Jul 2017, 16:38

Re: Formular über Button aufrufen

Beitrag von richgsm » Do 20. Jul 2017, 11:42

Hallo Robert,

vielen Dank für die Mühe!!

Nächste komme ich zum testen und melde mich.

Gruss
RobertG hat geschrieben:
Fr 14. Jul 2017, 12:27
Hallo Rich,

ich habe Dein Makro genommen, eben kurz in eine kleine Beispieldatenbank eingebaut und ausgeführt - geht. Siehe die Datei im Anhang.
Öffne das Formular "Personen" und drücke den Button.
Das zweite Formular wird ebenfalls geöffnet.
Jetzt wäre es natürlich sinnvoll, das erste Formular anschließend zu schließen (mit close).

Gruß

Robert

richgsm
Beiträge: 3
Registriert: Do 13. Jul 2017, 16:38

Re: Formular über Button aufrufen

Beitrag von richgsm » Mi 2. Aug 2017, 14:21

Hallo Robert

es klappt, vielen Dank.

Gruss Richard

RobertG hat geschrieben:
Fr 14. Jul 2017, 12:27
Hallo Rich,

ich habe Dein Makro genommen, eben kurz in eine kleine Beispieldatenbank eingebaut und ausgeführt - geht. Siehe die Datei im Anhang.
Öffne das Formular "Personen" und drücke den Button.
Das zweite Formular wird ebenfalls geöffnet.
Jetzt wäre es natürlich sinnvoll, das erste Formular anschließend zu schließen (mit close).

Gruß

Robert

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten