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. 🤗

DatensatzID aus SubForm ermitteln?

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
pschulze59
Beiträge: 51
Registriert: Di 16. Okt 2018, 12:48

DatensatzID aus SubForm ermitteln?

Beitrag von pschulze59 » Do 8. Nov 2018, 19:46

Hallo,

wie ermittle ich die Datensatz-ID des in einem SubForm angezeigten Datensatzes, wenn die ID selbst nicht Bestandteil des SubForms ist?
Mein bisheriger Versuch mit

Code: Alles auswählen

laktKontID = oDoc2.getlong(0)
speichert die "Position" des Datensatzzeigers im SubForm. Das ist aber nicht die ID des Datensatzes, da die Anzeige im SubForm auf einer SELECT-Anweisung bzw. Abfrage basiert und nur bestimmte Datensätze anzeigt.

Wie kann ich aus der Position dann den Datensatz adressieren und davon dessen ID auslesen?

Peter

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

Re: DatensatzID aus SubForm ermitteln?

Beitrag von RobertG » Do 8. Nov 2018, 21:52

Hallo Peter,

prinzipiell muss die ID natürlich in der Abfrage stehen, ansonsten bekommst Du die nicht raus. Sie muss aber nicht Inhalt eines Formularfeldes sein:

Code: Alles auswählen

nName = oForm.findColumn("Name")
sName = oForm.getString(nName)
Dies ist ein Beispiel aus dem Handbuch. Du musst den Namen aus der Abfrage nehmen. Der muss natürlich eindeutig sein.
Bei Deiner Variante müsste oDoc2 das Unterformular sein und "0" die Position sein, an der das Feld "ID" in der Abfrage steht. Meines Wissens geht das aber bei der Spaltenzählung erst bei "1" los. Habe ich so auch im Handbuch hinterlegt.

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

pschulze59
Beiträge: 51
Registriert: Di 16. Okt 2018, 12:48

Re: DatensatzID aus SubForm ermitteln?

Beitrag von pschulze59 » Do 8. Nov 2018, 22:09

Danke, Robert,

zu dem Schluss war ich dann letztlich auch gekommen und hatte entsprechen schon begonnen, das Formular zu erweitern.
In dem Zusammenhang entstand dann aber das nächste Problem (siehe nächsten thread viewtopic.php?f=10&t=19757), nämlich dass mir die ID nur was nützt, wenn ich sie nach Rückkehr ins ursprüngliche Formular zum Auffinden des richtigen Datensatzes auch verwenden kann. Ein Select kommt mir dabei nicht infrage, weil es die Datenmenge auf genau den Datensatz einschränkt und eine Schleife zum Suchen und Finden ist auch nicht elegant.

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