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 » 04.02.2013, 10:24

Hallo zusammen,

 

niemand eine Idee warum das übergeordnete Teilformular größer als das eigentliche Textfeld wird?

Gruß Torsten Klöden

 

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

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Merklin » 04.02.2013, 17:35

Hallo Torsten,

wie hast du den das TF eingefügt?
Du mußt das Textfeld mit TF umschliessen.

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

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

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 05.02.2013, 16:35

Hallo Merklin,

 

ich habe es geschafft, dass das Textfeld "Abstand" jetzt ohne umschließendes Teilformular "TextKeineHonorare" in meiner Tabelle die Höhe korrekt anpasst.

Aber mein Entgeltformular hat ja bei Rückrechnungen mehrere Seiten, es wird zwar für jede Seite die Höhe ermittelt, wie hoch das Textfeld werden soll. Jetzt habe ich aber das Problem, das für jede Seite immer der Wert der 1. Seiten verwendet wird. Dies ist natürlich falsch...

Code: Alles auswählen

data.Entgeltnachweis_DE.Lohnarten.Abstand::ready:layout - (FormCalc, server)

$.h = UnitValue(Concat(Überweisung_Titel.z.h.rawValue, "cm"), "in")xfa.layout.relayout()
 
Das Feld"h" mit der Sollhöhe[fontsize=2] liegt auf der Designansicht.   Die Bindung für die Feldhöhe liegt aber auf der Masterseite (ready:lyout). [/fontsize]

[fontsize=2]Wenn ich die Codezeile [/fontsize]

[fontsize=2]

Code: Alles auswählen

$.h = UnitValue(Concat(Überweisung_Titel.z.h.rawValue, "cm"), "in")
[/fontsize]

in  form:ready oder calculate mache funktioniert die Höhenanpassung eigentlich garnicht. Nur mit der oben beschrieben Lösung unter ready:layout  funktioniert die Höhenanpassung, allerdings nur mit der Höhe der 1. Seite.

Wie muss die Bindung sein, damit ich immer die der jeweiligen Seite nehme?

Ich habe echt schon viel probiert, bin echt ratlos. Bin für jede Idee dankbar.

Gruß Torsten

 

 

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

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Merklin » 05.02.2013, 16:48

Hallo,

schau dir mal diesen Beitrag an. Vielleicht hilft, der etwas weiter.

http://www.formatix.de/eforms-forum/viewtopic.php?f=3&t=29

VG Merklin

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

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 05.02.2013, 17:31

Sorry, ich steh hier völlig auf dem Schlauch!!!

ICh denke der Link ist genau anders rum, als mein Fall

Wie müsste den bei mir die Schleife aussehen?

Code: Alles auswählen

data.Entgeltnachweis_DE.Lohnarten.Abstand::ready:layout - (JavaScript, server) (Designseite)

//$.h = UnitValue(Concat(Überweisung_Titel.z.h.rawValue, "cm"), "in")
//xfa.layout.relayout()

for (var i = 0; i < xfa.host.numPages; i++) 
{
var oFields = xfa.resolveNode("#pageSet.StartseiteVorder[" + i + "]");

 $.h = xfa.resolveNode("#pageSet.StartseiteVorder.Titel_und_Anschrift.Allgemeine_Daten.tf_kopf.hoehe").rawValue; 
}

 
 Für was brauche ich das oFields? ICh blicks einfach nicht.

Danke im Voraus!

 


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

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Merklin » 05.02.2013, 18:13

Hallo,

sorry, aber das übersteigt auch meinen Horizont.

Vielleicht schreibst du radzmar mal direkt an. Er ist dort wirklich firm, in dieser Sache.

VG Merklin

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

mit berechnetem Wert die Feldhöhe ändern

Beitrag von Klödhilf » 06.02.2013, 18:10

Ich habe die Lösung gefunden:

Das Coding muss unter validate stehen, dann funktioniert zumindest die Höhenanpassung auf allen Seiten korrekt.

Ich hatte das zwar schon mal probiert, da hat es nicht funktioniert, wahrscheinlich reicht es nicht die Feldhöhe alleine erhöhen zu wollen, das wirkt nur zusammen mit dem relayout().

Durch das redesign der Seite zählt der Seitenzähler für die Spoolausgabe viel zu viele Seiten.

Vieleicht kann man das xfa.layout.relayout() nur auf das eine Feld wirken lassen und nicht auf das ganze Formular. Weis jemand wie man das relayout auf ein Teilformular oder ein Textfeld anwenden kann? 

Mit freundlichen Grüßen

Torsten


Antworten