Suche // Search:

10.10.2013

Individuelle Masterseiten-Zähler
//
Individual Master Page Counter

Immer wieder fragen Anwender, wie man in einem XFA-Formulare für jede Masterseite einen eigenen Seitenzähler anlegen kann.
Die üblichen Methoden wie xfa.layout.page(this) oder xfa.layout.pageCount() helfen hier nicht weiter.

Die Lösung ist dennoch simpel.
Eine Masterseite hat wie jedes andere Objekt auch eine Indexnummer, beginnend bei 0 für die erste Instanz.
Auf jeder Seite, auf der diese Masterseite erneut auftritt, erhöht sich die Indexnummer um 1.

Platziert man nun ein Feld auf der Masterseite, kann man den Index der Masterseite einfach per Skript im layoutReady-Event fragen.

In FormCalc sieht das dann so aus:
$ = $.parent.index + 1

In JavaScript entsprechend so:
this.rawValue = this.parent.index + 1;


Um nun noch die Gesamtzahl aller Instanzen der Masterseite zu erhalten, zählt man einfach das auftreten der Masterseiten.
Dafür bietet sich die resolveNodes()-Methode an.

In FormCalc:
$ = xfa.resolveNodes(somExpression).length

In JavaScript:
this.rawValue = xfa.resolveNodes(somExpression).length;


Users frequently ask how to create individual page counts for each master page in a XFA form.
The common methods like xfa.layout.page(this) or xfa.layout.pageCount() don't help here.

The solution however is very simple:
As any object a master page has a index number for each occurence, which always begins at 0 for the first instance.
On each page the master page occurs again the index is increased by 1.

If you place a field on your master page you can determine its index easily with a script in the layoutReady Event.

In FormCalc it looks this way:
$ = $.parent.index + 1

In JavaScript that way:
this.rawValue = this.parent.index + 1;


Now you only need to determine how often the master page occurs.
Therefore you can use the resolveNodes() method, as it allows us to count repeatable objects.

In FormCalc:
$ = xfa.resolveNodes(somExpression).length

In JavaScript:
this.rawValue = xfa.resolveNodes(somExpression).length;



Beispiel-Formular
//
Sample form

https://files.acrobat.com/preview/99815d28-441f-47e4-a05b-88e478187157

 

02.10.2013

LiveCycle ES4 Service Pack 1

Das erste Servicepack für LiveCycle ES4 wurde nun veröffentlicht.
Für Designer bringt es genau eine neue Funktion und ein paar Bugfixes.

Das Problem mit dem Dateifilter, das ich vormals beschrieben hatte ist behoben – na endlich!
Ein paar andere Probleme bestehen aber weiterhin.
Versuchen Sie mal ein bestehendes PDF in Designer zu importieren und mit der Zielversion "Acrobat und Adobe Reader 11.0 oder höher" abzuspeichern – Na? Genau, geht nicht!
Des Weiteren funktioniert der Aufruf der Makro-Methode showXDPinAcrobat() nicht.
Designer erzeugt zwar brav die XPD-Datei LiveCycleDesignerScriptMergeTemplate.xdp im Tempverzeichnis C:\Users\%user%\AppData\Local\Temp aber diese wird dann nicht automatisch mit Acrobat geöffnet.
Man muss die Datei also manuell mit Acrobat öffnen.

Neu hinzugekommen ist die Möglichkeit, den Dokumententitel anstelle des Dateinamens in der Kopfzeile des PDF-Viewers anzeigen zu lassen.
Diesen Hinweis findet man aber nur in der englischen Hilfe von Designer.
Dafür muss man das Tag <?originalXFAVersion http://www.xfa.org/schema/xfa-template/3.3/ DisplayDocTitle:1?> in die XML-Quelle einfügen.
Wo das Tag hingehört, darüber schweigt sich die Hilfe übrigens aus, genauso über die erforderliche Zielversion.
Jedenfalls funktioniert es nur, wenn man das Tag innerhalb des <template>-Tags plaziert und das Formular als statische PDF abspeichert.


Service Pack 1 für LiveCycle ES4 is here.
For Designer it means just one new feature and a few bug fixes.

Well, there was a problem with the file filter in the open dialog of the german Designer that is now fixed.
But there are still a few more unfixed bugs.
Have you ever tried to import an existing PDF into Designer an then save it with the target version "Acrobat and Adobe Reader 11. or higher"? Well? You see it's not possible!
There is also a bug with the macro API method showXDPinAcrobat().
Designer is still creating the XDP file named LiveCycleDesignerScriptMergeTemplate.xdp in the users temp folder C:\Users\%user%\AppData\Local\Temp but this file never gets opened automatically with Acrobat.
You have to open it manually.

New is the option to add the document title to the PDF-viewer title bar instead of the file name.
Therefore you have to add the tag <?originalXFAVersion http://www.xfa.org/schema/xfa-template/3.3/ DisplayDocTitle:1?> into the XML source of your form.
There is no word about where it has to be placed exactly and nothing about other neccessary settings like target version.
Anyway, it works but only if you put the tag within the <template> tag and save the form as static PDF.


Download Service Pack 1
https://www.adobe.com/cfusion/entitlement/index.cfm?e=lces4_sp1

Versionshinweise – LiveCycle ES4 Servicepack 1
//
Release Notes – LiveCycle ES4 Service Pack 1
http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/products/livecycle/pdfs/sp_download_readme.pdf

15.04.2013

Der Selbermachen-Bugfix 2
//
Do-It-Yourself bugfix 2

LiveCycle Designer ES3, Designer ES4 als auch AEM Forms Designer 6.1 haben in der deutschen Version einen kleinen aber nervigen Bug im Öffnen-Dialog.
Der Öffnen-Dialog zeigt, solange nach Adobe (LiveCycle) Designer-Dateien (*.pdf, *.xdp) gefiltert wird, keinerlei Dateien an.
Leider ist dieser Filter die Standardauswahl, weshalb man immer erst mühsam klicken muss, um seine Dateien zu sehen.

Leerer Öffnen-Dialog // Empty open dialog

Aber, dieser Bug lässt sich leicht in 5 Minuten selbst beheben.
Alles was Sie dafür brauchen ist die Freeware Ressource Hacker.

Hinweis:
Der Bug wird in Designer ES4 mittlerweile durch das Installieren von Servicepack 1 behoben!

1. Öffnen Sie mit Ressource Hacker die Datei DesignerResources.dll aus dem Programm-Ordner Ihres Designer (z.B: C:\Program Files (x86)\Adobe\Adobe LiveCycle Designer ES3\DE oder C:\Program Files (x86)\Adobe\Adobe Experience Manager Forms Designer\DE).

2. Navigieren Sie zum Baum StringTable und dann zur Unterordner 93 und suchen Sie den String mit der Nummer 1484.

3. Ersetzen Sie jeweils das Komma (,) hinter *.pdf durch ein Semikolon (;).


4. Klicken Sie anschließend auf Compile Script und speichern Sie ihre neue DLL-Datei irgendwo ab.


5. Ersetzen Sie die Original-DLL mit ihrer neu erstellten Version und starten Sie Designer neu.
Der Öffnen-Dialog zeigt nun wieder problemlos Dateien an.
Fehlerbereinigter Öffnen-Dialog // Fixed open dialog


This solution is only applicable for the german version of LiveCycle Designer ES3/ES4 and AEM Forms Designer 6.1.
The english version don't has to be fixed, that's why there is no description here.

10.04.2013

LiveCycle Designer ES4

Adobe hat LiveCycle ES4 veröffentlicht.
Interessierte können sich die 60-Tage-Testversion der einzelnen Module auf der Adobe-Website herunterladen.

Adobe has released LiveCycle ES4.
Interested users can download a 60 days trial of the modules from Adobe's website.

Designer ES4

LiveCycle Designer ES4 Testversion
//
LiveCycle Designer ES4 Trial
http://www.adobe.com/cfusion/tdrc/index.cfm?product=livecycle_designer