[gelöst] datensatzmakierer für übergabe d. Primkey an makro

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

juergen_w1987
**
Beiträge: 48
Registriert: Fr, 04.02.2011 09:31

[gelöst] datensatzmakierer für übergabe d. Primkey an makro

Beitrag von juergen_w1987 »

Hy leute,

hab wieder mal ein problemchen.
Habe ein Formular in meiner Datenbank wo Prüfungen in einer Tabelle (Prüfdaten) angezeigt werden. Nun gibt es in der Tabelle den coolen Datensatzmakierer.
So mein wunsch ist dass ich mit dem Datensatzmakierer eine zeile auswähle(funktioniert). Jetzt habe ich mir ein paar Buttons hinzugefügt (speichern,..) und einen habe ich mit dem ich ein Makro ausführe.
Da ist schon das Problem wie bekomme den Primkey der ausgewählten Zeile in mein Makro. Ich brauche den Primkey da ich mit dem Makro Daten aus einem XML-File auslese und zur richtigen Prüfung schreiben muss.

danke schon mal im vorhinein.
verwende OOo3.2.1
HSQLDB 1.9
Zuletzt geändert von juergen_w1987 am Mi, 03.08.2011 08:39, insgesamt 1-mal geändert.
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: datensatzmakierer für übergabe d. Primkey an makro

Beitrag von F3K Total »

Hallo Jürgen,
angenommen der Dateninhalt des Formulares, auf dem sich dein Tabellenkontrollfeld befindet ist eine Tabelle oder Abfrage, und der Primkey ist ein Integer Wert in der ersten Spalte der Tabelle oder Abfrage, der Name des Formulares sei "MainForm" dann geht das am einfachsten so:

Code: Alles auswählen

oform=ThisComponent.drawpage.forms.Mainform
oprimkey=oform.getint(1)
Die 1 bedeutet erste Spalte, wäre der Primkey in Spalte 4 hieße es

Code: Alles auswählen

oprimkey=oform.getint(4)
Gruß R

Edit: Den Namen des Formulares findest Du, wenn du Dein Fomular im Bearbeitungsmodus öffnest, dann einen Rechtsklick auf das Tabellenkontrollfeld machst, "Formular" auswählst, in der ersten Zeile unter dem Reiter "Allgemein".
juergen_w1987
**
Beiträge: 48
Registriert: Fr, 04.02.2011 09:31

Re: datensatzmakierer für übergabe d. Primkey an makro

Beitrag von juergen_w1987 »

Ich danke dir funktioniert wunderbar.

Ps.:

Code: Alles auswählen

oprimkey=oform.getint(4)
die Zahl 4 ist die Position in der Tabelle und nicht die Postition in der Tabelle im Formular.

mfg

jürgen
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: [gelöst] datensatzmakierer für übergabe d. Primkey an ma

Beitrag von F3K Total »

Ja, genau wie ich geschrieben habe ...
F3K Total hat geschrieben:... der ersten Spalte der Tabelle oder Abfrage
Na, schön dass es klappt
Gruß R
juergen_w1987
**
Beiträge: 48
Registriert: Fr, 04.02.2011 09:31

Re: [gelöst] datensatzmakierer für übergabe d. Primkey an ma

Beitrag von juergen_w1987 »

hab noch was gefunden wers braucht nachlesen unter link!!

Code: Alles auswählen

SubForm = thiscomponent.drawpage.forms.getbyname("Payables").getByName("PayablesSubForm")
http://www.oooforum.org/forum/viewtopic.phtml?t=76753

mfg

jürgen
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: [gelöst] datensatzmakierer für übergabe d. Primkey an ma

Beitrag von F3K Total »

Hallo,
noch ein Tip: Wenn die Formulare/Subformulare ohne Leerzeichen/Sonderzeichen benannt sind, geht der Zugriff auf das Subform auch so:

Code: Alles auswählen

SubForm = thiscomponent.drawpage.forms.Payables.PayablesSubForm
Dabei auf Groß-/Kleinschreibung zu achten.
Gruß R
Antworten