Kombinationsfeld mit Inhalten füllen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Kombinationsfeld mit Inhalten füllen

Re: Kombinationsfeld mit Inhalten füllen

von arkadiuszpaluszek » Do, 08.03.2012 00:47

Jawohl ja, es geht doch!!! Herzlichsten dank. Habe mich so viel mit PHP und JavaScript in den letzten Wochen befasst dass ich bei Star Basic die Feinheiten schon wieder aus dem Blick verliere.

Es funktioniert, danke!

Gruß

Arek

Re: Kombinationsfeld mit Inhalten füllen

von F3K Total » Mi, 07.03.2012 20:16

Hallo Arek,
die Schwierigkeit ist das, was normalerweise passiert, wenn du eine Spalte des Tabellenkontrollfeldes verlässt.
Die Bestätigung der Eingabe in den Tiefen des Tabellenkontrollfeldes->Spalte->Kombinationsfeldes per Makro auszuführen.

Wenn Du an das Ereignis "Maustaste losgelassen" der "Kombinationsfeldspalte" einen Code wie folgt vorwegstellst, geht es:

Code: Alles auswählen

oField = event.source.model
ogrid = ofield.parent
controller = thisComponent.CurrentController
Control = Controller.getControl(ogrid)
Control.commit(true)

ocolbez = ogrid.getbyname("Artikelbezeichnung")
ocolbez.Text = "geht doch!"
ocolbez.commit(true)
Control.commit(true)
Viel Erfolg, Gruß R

Re: Kombinationsfeld mit Inhalten füllen

von arkadiuszpaluszek » Mi, 07.03.2012 18:42

Es funktioniert wenn die Kombinationsfelder nicht ein Teil eines Tabellenelements sind. Eine Kombinationsbox außerhalb des Tabellenelements wird wunderbar mit Inhalten gefüllt. Mal wieder ein "Bug"!

Sollte ich der Mailingliste melden, ich weiß...

Gruß

Arek

Kombinationsfeld mit Inhalten füllen

von arkadiuszpaluszek » Mi, 07.03.2012 17:03

Hallo!
Habe in einem Formular ein Kombinationsfeld mit mehreren Spalten:
Beispiel.jpg
Beispiel.jpg (22.92 KiB) 1725 mal betrachtet
Eigentlich möchte ich den Inhalt der Felder per Makro setzen (d.h. ich wähle im ersten Kombinationsfeld die Artikelnummer, dann werden die Artikelbezeichnung, die Abrechnungseinheit und der Preis aus einer DB gelesen und dort automatisch gesetzt).

Das Ansteuern der Felder funktioniert schon mal, wenn ich

Code: Alles auswählen

oElement=oTabelle.GetByName("Artikelbezeichnung")
bezeichnung=oElement.text
schreibe, bekomme ich auch den Inhalt des Feldes in eine Variable.

Das ist es aber nicht, was ich will, ich möchte wie bereits gesagt das umgekehrt machen:

Code: Alles auswählen

oElement=oTabelle.GetByName("Artikelbezeichnung")
oElement.text=bezeichnung
Da ich mir per msgbox() den Inhalt der Variablen "bezeichnung" anzeigen lasse, weiß ich, dass sie einen Wert hat. Dieser erscheint aber nicht im entsprechenden Kombinationsfeld, warum eigentlich?

Ein Währungsfeld welches auch mit Inhalten gefüllt werden soll, wird mit dem Wert gefüllt, wenn ich im Nachhinein drauf klicke - keine Ahnung, warum nicht sofort. Die Kombinationsfelder bleiben aber leer.

Ich benutze LibreOffice 3.5 auf einem Win7 64Bit Rechner.

Gruß

Arek

Nach oben