🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.

🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Formular2 mit Datensatz aus Formular1 öffnen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Benutzeravatar
zwackel
Beiträge: 10
Registriert: Di 2. Apr 2019, 22:17

Formular2 mit Datensatz aus Formular1 öffnen

Beitrag von zwackel » Di 2. Apr 2019, 22:29

Ich möchte gerne über eine Schaltfläche (Formular 1: Hefte) einen bestimmten Datensatz, der in diesem Formular angezeigt wird in einem zweiten Formular (Formular 2: Heftdetails) öffnen. Im zweiten Formular sollen alle Datensätze aus dem ersten Formular angezeigt und direkt zu dem im ersten Formular aktuellen Datensatz springen.

Leider komme ich nur soweit, dass das zweite Formular sich mit dem ersten Datensatz öffnet.

Sub openForm_Heft_Row
DIM oFormHefte AS OBJECT
DIM oFormHeftdetails AS OBJECT

oFormHeftdetails = ThisDatabaseDocument.FormDocuments.getByName("Heftdetails").open
oFormHeftdetails.drawpage.forms.MainForm
End Sub

Kann mir hier jemand helfen.
Viele Grüße
Volker

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Formular2 mit Datensatz aus Formular1 öffnen

Beitrag von RobertG » Mi 3. Apr 2019, 16:52

Hallo zwackel,

Du könntest entweder mit einer Abfrage arbeiten und beim ersten Formular und Betätigung des Buttons zum Wechsel die ID des Datensatzes in eine Filtertabelle schreiben. Oder Du könntest die ID des betreffenden Datensatzes über den Formularfilter an das zweite Formular weitergeben.

Hier einmal stumpf die Kopie aus dem Handbuch mit dem Beispiel zum Filter direkt im Formular:
SUB FilterSetzen
DIM oDoc AS OBJECT
DIM oForm AS OBJECT
DIM oFeld AS OBJECT
DIM stFilter As String
oForm = thisComponent.Drawpage.Forms.getByName("MainForm")
oFeld = oForm.getByName("Filter")
stFilter = oFeld.Text
oForm.filter = " UPPER(""Name"") LIKE '%'||'" + UCase(stFilter) + "'||'%'"
oForm.ApplyFilter = TRUE
oForm.reload()
End Sub
Hier geschieht das innerhalb eines Formulars. Du wirst allerdings aus dem ersten Formular den Filterwert aufrufen und an ein zweites Formular übergeben, also an Dein oFormHeftdetails.drawpage.forms.MainForm, nicht wie in dem obigen Beispiel einfach an oForm.

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


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten