mit berechnetem Wert die Feldhöhe ändern

SFP..SAPscript (Transaktion SE71)..Smartforms (TA Smartforms).. Interactive Forms..Transaktion EFRM)..SIFBA..IAF..AIF..SIFBA - SAP_Interactive_Forms_based_on_Adobe // LÖSUNGSANSÄTZE aber AUCH FÜR "NORMALE" PDFs VERWENDBAR ;-)
Klödhilf
Beiträge: 8
Registriert: 20.07.2011, 12:12

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 18.01.2013, 06:54

Hallo zusammen,

ich benutze den Adobe Livecycle Designer ES aus SAP HCM heraus.

Ich habe in einem Feld einen berechneten Wert, dieser soll an einer anderen Stelle im Formular eine Feldhöhe zur Laufzeit ändern. Leider wird der Wert nicht richtig "interpretiert", dadurch ist die Feldhöhe immer viel zu größ, zB.

In dem Feld oder Variable steht "3,5" , dies habe ich  durch Änderung des Menüpunktes Musters auf Englische Sprache umgestellt, somit steht jetzt im Feld 3.5

Die Übergabe an das zu ändernde Feld sieht dann wie folgt aus.

$.h = feldhoehe.rawValue  --> hier ist das Feld aber viel zu groß, wird scheinbar als 3,5 interpretiert.

Eine direkte Wertvorgabe funktioniert aber reibungslos

$.h = 3.5
$.h ="3,5" funktioniert auch

Ich habe auch schon viel rumprobiert, mit replace oder concat usw.

Wie kann ich den Feldinhalt korrekt an mein zu änderndes Feld übergeben? Wie kann ich eine Übergabe der Form "3.5in" ereichen?

Die Lösung ist bestimmt ganz einfach, aber ich stehe auf dem Schlauch.

Vielen Dank im Voraus für Eure Hilfe.

MfG

Torsten Klöden

 

 

 

 

 

Benutzeravatar
radzmar
Beiträge: 961
Registriert: 26.10.2011, 10:18

mit berechnetem Wert die Feldhöhe ändern

Beitrag von radzmar » 18.01.2013, 08:26

Du musst die Einheit mit angeben, also mm, cm, pt oder in, sonst wird der Wert immer in Zoll interpretiert.

Also z.B.:

Code: Alles auswählen

$.h = "3.5cm"

Klödhilf
Beiträge: 8
Registriert: 20.07.2011, 12:12

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 18.01.2013, 10:25

Ich habe meine Höhe so berechnet das sie in inch ist, also könnte ich die Einheit weg lassen.

Aber wie setze ich dann den String zusammen, damit in meinem Feld oder Variable "3.5cm" steht?

$.h = concat( """, Variable.rawValue,""") funktioniert ja wegen der """ nicht?

 

 

Benutzeravatar
radzmar
Beiträge: 961
Registriert: 26.10.2011, 10:18

mit berechnetem Wert die Feldhöhe ändern

Beitrag von radzmar » 18.01.2013, 13:51

Das sollte so funktionieren.

Code: Alles auswählen

$.h = UnitValue(Concat(Variable, "cm"), "in")

Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Merklin » 18.01.2013, 14:38

Hallo radzmar,

in einem Versuch von mir, klappt es aber leider nicht.
In welchen Event muss man das Script legen?

VG Merklin
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
radzmar
Beiträge: 961
Registriert: 26.10.2011, 10:18

mit berechnetem Wert die Feldhöhe ändern

Beitrag von radzmar » 18.01.2013, 14:50

Geht doch — mit FormCalc ;)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Merklin » 18.01.2013, 15:13

Hallo radzmar,

alles klar.

Jetzt läuft es.

Danke

VG Merklin

Klödhilf
Beiträge: 8
Registriert: 20.07.2011, 12:12

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 30.01.2013, 17:01

Hallo zusammen,

vielen Dank für die Lösung des Problems, das Feld wird jetzt korrekt in der Höhe geändert.

Allerdings ist das umschließende Teilformular viel größer als das Textfeld, welches die Höhe ändert. Im angehangen Beispiel ist Textfeld mit der Strich-Punkt-Linie umrandet das Teilformular mit der gestrichelten Linie.

Das Teilformular ist als Fließtext (oben nach unten) und unter Layout als automatisch anpassen gekennzeichnet.

Das Teilformular hängt in eine Tabelle zw. Tabellenzeilen. Kann man das Texfeld direkt ohne Teilformular in einer Tabelle zw. Tabellenzeilen einfügen? Hab das irgendwie nicht hinbekommen.

Wie bekomme ich das Teilformular dazu, nur die benötigte Höhe des Textfeldes einzunehmen?

Vielen Dank im Voraus

MfG

Torsten Klöden

 

 

 
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Merklin » 30.01.2013, 17:59

Hallo Torsten,

bin mir zwar nicht sicher ob ich dich richtig verstehe.

Aber in einer Tabelle brauchst du nur das Textfeld, auf mehrere Zeilen stellen und automatisch an Höhe anpassen klicken.

Dann erweitert sich das Feld automatisch, um so mehr Zeilen du ein gibst.
Dafür benötigst du kein TF.

VG Merklin

Klödhilf
Beiträge: 8
Registriert: 20.07.2011, 12:12

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 31.01.2013, 07:54

Merklin hat geschrieben:Hallo Torsten,

bin mir zwar nicht sicher ob ich dich richtig verstehe.

....
VG Merklin
 

Hallo Merklin,

ich denke du hast mich nicht richtig verstanden. Ich habe einen Auszug aus dem Strukturbaum angehangen. Die Tabelle Lohnarten wird je nach dem vorhanden sein von Für- und Inperiode mehrfach durchlaufen.

Die Teilformulare/ Tabellenzeilen SummeHonorare bis Überweisung_Titel werden höhenmäßgi ermittelt. Das Feld "Abstand" soll dann so groß werden, dass die folgenden Teilformulare Tabellenzeilen ganz unten auf der Seite stehen.

Die Anpassung des Textfeldes funktioniert ja jetzt reibungslos. Nur das Teilformular "TextKeineHonorare" ist größer als das Feld "Abstand".

Das Feld "Text1" wird nur angedruckt, wenn die Tabelle HonorarDaten keine Daten enthält.

Wie bekomme ich es hin, dass das Teilformular "TextKeineHonorare" nur so groß wird wie das Textfeld Abstand?

Ich habe auch schon viel experimentiert mit den Fußzeilen in Tabellen usw. aber das hat auch immer nicht richtig funktioniert.

Um das Problem mitdem zu großen Teilformular zu umgehen, kann ich das Textfeld "Abstand" anstelle des Teilformulares "TextKeineHonorare" direkt einbinden?

Vielen Dank im Voraus!

MfG

Torsten Klöden
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Antworten