Hallo zusammen,
ich habe eine Briefvorlage im pdf-Format erstellt.
Diese beinhaltet 2 Masterseiten.
Auf der ersten Masterseite befindet sich der Briefkopf sowie die Fußzeile, ab der zweiten Briefseite soll nur noch der Briefkopf angedruckt werden. Das habe ich alles vom Prinzip her hinbekommen.
Nun habe ich ein Steuerungsmenü eingebaut, über welches verschiedene Dinge ein- und ausgeblendet werden können. Nun treten folgende Problemchen auf.
a) Ich kann den Kopf- und Fussbereich zwar ausblenden, sobald ich allerdings den Strichcode oder die Unterschriftsgrafik einblende oder der Brief aufgrund der Textmenge eine weitere Seite erhält, erscheinen die ausgeblendeten Elemente wieder.
b) Das Einblenden der Unterschriftsgrafik funktioniert nur dann, wenn dies zu Beginn des Dokuments getan wird und dann der Brieftext eingegeben wird. Spätenstens wenn sich die Unterschrift auf Seite 2 befindet, funktioniert das Script nicht mehr. Es funktioniert aber auch dann nicht mehr, wenn der Brieftext gelöscht wird und sich die Unterschrift wieder auf Seite 1 befindet.
Bin ratlos ... Hat jemanden Lösungen (mit Beispielen) für meine Probleme?
Ausgeblendete Inhalte auf Masterseite werden wieder sichtbar
Ausgeblendete Inhalte auf Masterseite werden wieder sichtbar
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Ausgeblendete Inhalte auf Masterseite werden wieder sichtbar
Hallo zusammen,
ich bin nun einen Schritt weiter und habe zumindest Punkt a) "hemdsärmlig" behoben, indem ich im ready:layout-Event folgenden Code eingebaut habe.
Die Sache mit der Unterschriftsgrafik ist für mich weiterhin ein Rätsel.
ich bin nun einen Schritt weiter und habe zumindest Punkt a) "hemdsärmlig" behoben, indem ich im ready:layout-Event folgenden Code eingebaut habe.
Code: Alles auswählen
Briefvorlage::ready:layout - (JavaScript, client)
if (Briefvorlage.V1.rechtesTeilformular.StatischerAbschnitt.Steuerung.Head.rawValue == 1)
{
xfa.resolveNode("#pageSet[0].V1.Brief_LOGO").presence="visible";
xfa.resolveNode("#pageSet[0].V1.Brief_FUSS").presence="visible";
for (var i = 0; i < xfa.host.numPages; i++)
{
var oFields = xfa.resolveNode("Briefvorlage.#pageSet.Seite2[" + i + "]");
oFields.Brief_LOGO.presence = "visible";
}
} else {
xfa.resolveNode("#pageSet[0].V1.Brief_LOGO").presence="invisible";
xfa.resolveNode("#pageSet[0].V1.Brief_FUSS").presence="invisible";
for (var i = 0; i < xfa.host.numPages; i++)
{
var oFields = xfa.resolveNode("Briefvorlage.#pageSet.Seite2[" + i + "]");
oFields.Brief_LOGO.presence = "invisible";
}
}
- nele_sonntag
- Beiträge: 2742
- Registriert: 04.05.2009, 15:12
- Wohnort: Frankfurt
- Kontaktdaten:
Re: Ausgeblendete Inhalte auf Masterseite werden wieder sichtbar
Hallo jensen82,
wenn du den Debugger aktivierst, bekommst du die Fehlermeldung, dass:
Hier liegt also ein Scriptfehler vor.
Ich würde aber empfehlen, nur mit einer Masterseite zu arbeiten. Das die Fußzeile ab Seite 2 nicht eingeblendet wird, würde ich im Objekt Fußzeile auf der Masterseite 1 im calculate überprüfen und es automatisch ausblenden, wenn die Seitenanzahl größer 1 ist.
Ansonsten hast du die Möglichkeit in den Objekten selbst zu scripten, bspw. in der Subform "Brief_Logo" im calculate Event:
Dann funktionieren alle Objekte mE nach tadellos.
LG Mandy
wenn du den Debugger aktivierst, bekommst du die Fehlermeldung, dass:
Code: Alles auswählen
TypeError: oFields is null
19:XFA:Briefvorlage[0]:V1[0]:rechtesTeilformular[0]:StatischerAbschnitt[0]:Steuerung[0]:Head[0]:change
Ich würde aber empfehlen, nur mit einer Masterseite zu arbeiten. Das die Fußzeile ab Seite 2 nicht eingeblendet wird, würde ich im Objekt Fußzeile auf der Masterseite 1 im calculate überprüfen und es automatisch ausblenden, wenn die Seitenanzahl größer 1 ist.
Ansonsten hast du die Möglichkeit in den Objekten selbst zu scripten, bspw. in der Subform "Brief_Logo" im calculate Event:
Code: Alles auswählen
(Briefvorlage.V1.rechtesTeilformular.StatischerAbschnitt.Steuerung.Head.rawValue == "1") ? this.presence = "visible" : this.presence = "hidden";
LG Mandy