LOB, Beschriftungsfeld mit Makro ändern
Verfasst: Mi 28. Jul 2021, 18:34
Hallo,
hänge mal wieder beim Programmieren eines Makros in meiner Datenbank "Komponenten" fest. Die Datenbank beinhaltet die Informationen meiner Bauteile wie "elektr Bauteildaten, Stückzahl vorhanden, etc.". Das Formblatt "Eingabe" habe ich an einen Bauteiltyp notgedrungener Weise angepasst. Es beinhaltet String-Felder zusammen mit den jeweiligen Beschriftungsfeldern (BFeld). Nun möchte ich die Beschriftung einzelner Felder anpassen, da der Wert zwar gleicher Art, aber die Beschriftung des Wertes anders ist. zB. BFeld heißt original "Ube", gebe ich die Werte eines FET ein, dann sollte das BFeld "Ug" heißen. Ich versuche abhängig von einem Feld, das den Typ des Bauteiles enthält das BFeld zu ändern.
Mein Makro:
Beim Fokusverlust des Feldes "Bauteil" wird der Makro "Test" aufgerufen, da abhängig vom Bauteil das BFeld an anderer Stelle geändert werden soll. Nur wie funktioniert das? Meine Versuche sind derzeit alle schiefgelaufen.
Sub Test
Dim oController as object, DIM oDoc as object, DIM oDrawpage as object, DIM oForm as object
DIM oField as Object
DIM var1 as String
DIM Label as string
oDoc = thisComponent
oController = oDoc.getCurrentController()
oDrawpage = oDoc.drawpage
oForm = oDrawpage.forms.getByName("Eingabe") ' mein Formular
var1=oForm.findColumn("Typ") ' Bauteiltyp
REM Feststellen des Typs
if oForm.getstring(var1)="BIP" or oForm.getstring(var1)="FET" THEN
Bis hierher geht alles. Wie kann ich nun den Text des BFeldes eines Feldes "lblUcb" das zZt "Ube" heißt in "Ug" ändern?
lblUcb="Ug"
Mit meiner Methode geht nix! Fehlermeldung ist "Variable nicht belegt".
In der Dok wird das BFeld mit "Label" bezeichnet, aber leider kein Bsp. genannt, wie man den Label ausliest.
Gibt es Hilfe?
Gruß Frewer
hänge mal wieder beim Programmieren eines Makros in meiner Datenbank "Komponenten" fest. Die Datenbank beinhaltet die Informationen meiner Bauteile wie "elektr Bauteildaten, Stückzahl vorhanden, etc.". Das Formblatt "Eingabe" habe ich an einen Bauteiltyp notgedrungener Weise angepasst. Es beinhaltet String-Felder zusammen mit den jeweiligen Beschriftungsfeldern (BFeld). Nun möchte ich die Beschriftung einzelner Felder anpassen, da der Wert zwar gleicher Art, aber die Beschriftung des Wertes anders ist. zB. BFeld heißt original "Ube", gebe ich die Werte eines FET ein, dann sollte das BFeld "Ug" heißen. Ich versuche abhängig von einem Feld, das den Typ des Bauteiles enthält das BFeld zu ändern.
Mein Makro:
Beim Fokusverlust des Feldes "Bauteil" wird der Makro "Test" aufgerufen, da abhängig vom Bauteil das BFeld an anderer Stelle geändert werden soll. Nur wie funktioniert das? Meine Versuche sind derzeit alle schiefgelaufen.
Sub Test
Dim oController as object, DIM oDoc as object, DIM oDrawpage as object, DIM oForm as object
DIM oField as Object
DIM var1 as String
DIM Label as string
oDoc = thisComponent
oController = oDoc.getCurrentController()
oDrawpage = oDoc.drawpage
oForm = oDrawpage.forms.getByName("Eingabe") ' mein Formular
var1=oForm.findColumn("Typ") ' Bauteiltyp
REM Feststellen des Typs
if oForm.getstring(var1)="BIP" or oForm.getstring(var1)="FET" THEN
Bis hierher geht alles. Wie kann ich nun den Text des BFeldes eines Feldes "lblUcb" das zZt "Ube" heißt in "Ug" ändern?
lblUcb="Ug"
Mit meiner Methode geht nix! Fehlermeldung ist "Variable nicht belegt".
In der Dok wird das BFeld mit "Label" bezeichnet, aber leider kein Bsp. genannt, wie man den Label ausliest.
Gibt es Hilfe?
Gruß Frewer