Suche // Search:

Posts mit dem Label LiveCycle ES3 werden angezeigt. Alle Posts anzeigen
Posts mit dem Label LiveCycle ES3 werden angezeigt. Alle Posts anzeigen

02.03.2016

Dynamischer PDF417-Code
//
Dynamic PDF417 code

Das heutige Beispiel ist eine Lösung zum Erzeugen von PDF417-Codes in XFA-Formularen ohne die integrierten Papierformular-Barcodes. Der Vorteil ist, diese Lösung basiert allein auf JavaScript und funktioniert somit auch ohne die LiveCycle Reader Extensions. Weiterhin kann man diese Barcode-Lösung sowohl in Acrobat als auch Reader verwenden.

Today's sample is a solution for creating PDF417 codes in XFA forms without the usage of the built-in paper forms barcodes. The benefit is, this works without LiveCycle ReaderExtensions as it is based on JavaScript. This also means you can use the barcode solution in Acrobat and Reader as well.



Beispiel
//
Sample

https://acrobat.adobe.com/link/track?uri=urn:aaid:scds:US:5ec776ed-0670-4bae-af18-555a0a810e5c


Diese Lösung jetzt kaufen
//
Buy this solution now
Sie erhalten ein Fragment mit dieser Lösung für Ihren LiveCycle Designer ES3/ES4 oder AEM Forms Designer.

You'll receive a fragment of this solution for your LiveCycle Designer ES3/ES4 or AEM Forms Designer


03.02.2014

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

Neulich stieß ich auch das Problem, da ich im Designer keine Bilder mehr durch Doppelklicken eines Bildfeldes hinzufügen konnte.
Alles was ich zu Gesicht bekam, war die barsche Meldung: "Auf Ihrem System wurde kein Bilddatei-Browser gefunden.".

In den Optionen des Designers offenbarte sich das Problem, denn für die Dateiverwaltung war kein Dateibrowser vorhanden und auch nicht auswählbar.
Ursache ist das Fehlen eines Registrierungseintrages für den Dateibrowser den Designer mitbringt.

Abhilfe schaft hier ein kurzer Ausflug in die Windows Kommandozeile.


I recently got a problem in Designer where I wasn't able to add images by double clicking an image field.
All a got was a gruff message saying "Error: Unable to locate an image file browser on your system".

In Designers options dialog showed the dilemma. There wasn't a default file browser available and also not selectable.
The reason is a missing registry entry for the file browser that comes with Designer.

You can fix this with a short excursion into the Windows command line.


Bug – Fehlender Bilddatei-Browser
//
Bug – Missing image file browser


Fehlermeldung - Fehlender Bilddatei-Browser
//
Error - Missing image file browser
Fehlender Dateibrowser im Optionen-Dialog
//
Missing file browser in the options dialog

Selbermachen-Bugfix – Schritt für Schritt
//
Do-It-Yourself Bugfix – Step by Step


Schritt 1 – Öffnen Sie die Kommandozeile (cmd) mit Administrator-Rechten
//
Step 1 – Open the command line (cmd) with admin rights


Schritt 2 – Wechseln Sie mit "cd" das Installationsverzeichnis Ihres Designer z.B. "cd C:\Program Files (x86)\Adobe\Adobe LiveCycle Designer ES3"
//
Step 2 – Use "cd" to go to the Designers installation directory like "cd C:\Program Files (x86)\Adobe\Adobe LiveCycle Designer ES3"


Schritt 3 – Registrieren Sie den Dateibrowser mit dem Befehl "regsvr32.exe FileSystemBrowser.dll" neu.
//
Step 3 – Register the file browser with the command "regsvr32.exe FileSystemBrowser.dll".
Glückwunsch - Sie haben den Dateibrowser erfolgreich registriert
//
Congratulations - You successfully registered the file browser

Schritt 4 – Starten Sie Designer neu und prüfen Sie, ob der Dateibrowser unter "Extras" > "Optionen" wieder verfügbar ist.
//
Step 4 – Restart Designer and under "Tools" > "Options" check if the file browser is available again.



08.01.2014

Arbeiten mit Prototypen
//
Working with Prototypes

Beim Erstellen von XFA-Formularen muss man immer viel editieren, um ein einheitlichen Look hin zu bekommen.
Ja es ist mühselig all den vielen verschiedenen Feldtypen dieselben Farben und Fonts zuzuweisen, oder dasselbe Skript in mehrere Objekte zu kopieren. Fragmente oder eigene Objekte in der Bibliothek vereinfachen das zwar, haben aber zwei Nachteile. Zum einem ist das nachträgliche Ändern einer Eigenschaft genauso aufwendig, als wenn man jedes Objekt einzeln editiert und dann führen einzeln angepasste Objekte immer zu einer größeren Datei.

Für solche Zwecke bieten sich daher Prototypen an. Hier braucht man nur die Eigenschaften des Prototypen ändern und alle anderen Objekte erben diese Änderungen automatisch. So lassen sich z.B. Schriftarten, Farben, Ränder oder Skripte global anpassen. Ein weiterer Vorteil ist, dass die referenzierenden Objekte kaum Platz in der XML-Struktur benötigen, was die Dateigröße gering hält. Das macht sich vor allem bei Formularen mit hunderten Objekten bezahlt.

Klingt toll oder? Noch nie von gehört, was?! Nun ja, Prototypen existieren eigentlich schon immer in XFA, nur wirklich publik hat Adobe das nie gemacht.
Tatsächlich sind sie eingehend in der XFA Spezifikation beschrieben, aber wer liest schon ein 1.500 Seiten starkes Handbuch so genau durch?

Prinzipiell ist es ganz einfach mit den Prototypen.
Jedem Objekt, egal ob Teilformular, Feld, Border oder Skript, kann man ein id-Attribut (auch bekannt als XML ID) zuweisen, das es innerhalb des Formularentwurfs eindeutig identifiziert. Es wird dadurch zu einen Prototypen.
Ein anderes Objekt kann dann auf dieses id-Attribut referenzieren und erbt so alle Eigenschaften und Kind-Objekte des Prototypen.
Dafür fügt man dem Objekt ein use oder usehref-Attribut hinzu. Das use-Attribut kann dabei nur auf Prototypen innerhalb des Formularentwurfs zugreifen, das usehref-Attribut hingegen auch auf externe Formularentwürfe (*.xdp). Letzteres ist aber nur bei Serverlösungen interessant.

Creating XFA forms means a lot of editing to get a consistent look and feel.
It’s indeed a pain to assign all those different field types the same colors and fonts or to reuse the same script in different objects. Fragments and custom objects in a library already make such things easier but also have two disadvantages. Firstly it’s as complicated to change a property afterwards as when you edit each object separately and secondly the file sizes grows with every single edited object.

For those purposes prototypes are the best solution. There you only need to edit the properties of a prototype and all referencing objects automatically get the changes assigned. So you can edit fonts, colors, border or scripts very easy globally. A benefit of this method is, that the referencing objects need hardly any space in the XML source, which means a smaller file size. This is especially handy in forms with hundres of fields.

Sounds great, right?! Ok, you’ve never heard about before, didn’t you? Well, prototypes exists since ages in XFA, but never have been made such public by Adobe.
You can read about them in the XFA specs, but who’s ever reading a 1.500 pages strong manual completely?

Ok, the usage of prototypes is indeed easy.
Every object – no matter if it’s a subform, field, border or script – can have assigned an id attribute (also known as XML ID), which identifies these object within the template. By this id attribute the object becomes a prototype.
Another object then can reference to this id attribute and will inherit all properties and child objects of the prototype.
Therefore you add an use or usehref attribute to the object. The use attribute can only refer to prototypes within the current template while the usehref attribute can also refer to external templates (*.xdp). The second method is only interesing in server enviroments.


Einen Prototypen erstellen
//
Creating a prototype


Schritt 1 – Erstellen Sie ein neues Formular und platzieren Sie dort ein Textfeld.
//
Step 1 – Create a new form and place a text field somewhere.



Schritt 2 – Editieren Sie das Textfeld – ändern Sie Schriftart, Beschriftung, Hintergrundfarbe usw.
//
Step 2 – Edit the text field – change the font, caption, background color etc.



Schritt 3 – (optional) Ziehen Sie das Textfeld in der Hierarchie in den Ast "referenzierte Objekte".
//
Step 3 – (optional) Drag the text field into "referenced objects" within the hierarchy tree.



Schritt 4 – Wechseln Sie in die XML-Quelle und klicken Sie dann auf das Textfeld in der Hierarchie, damit die Ansicht direkt zu dem Feld springt.
//
Step 4 – Switch to the XML source view and click on the text field in the hierarchy so the focus is set onto the field.



Schritt 5 – Fügen Sie dem <field>-Tag ein id-Element hinzu, z.B. id="protoTextField".
//
Step 5 – Add an id element to the <field>-Tag like id="protoTextField".

<!-- Feld mit XML ID // Field with XML ID -->
<field name="protoTextField1" id="protoTextField" y="6.35mm" x="6.35mm" w="79.375mm" h="44.45mm">
   ...
</field>



Einen Prototypen referenzieren
//
Referencing a prototype

Zum Referenzieren gibt es verschiedene Möglichkeiten.
Dem referenzierenden Objekt fügt man ein use-Attribute hinzu, dass einen Stringwert mit der Referenz zum Prototypen enthält.
Die einfachste ist die Verwendung der XML ID des Prototypen.
Der Stringwert beginnt mit hier mit einer # gefolgt von der XML-ID des Prototypen, also z.B. use="#prototypeId".

Die andere Möglichkeit ist der SOM-Ausdruck des Prototypen, also z.B. use="Form1.#proto[0].protoTextField".
Diese Methode ist nicht so flexibel, wie die mit der XML-ID, da man alle Referenzen manuell ändern muss, wenn sich der SOM-Ausdruck des Prototypen geändert hat.


There are a couple of methods to reference a prototype.
You add a use attribute to the referencing object, that has a string value with the prototypes reference.
The simplest method is the usage of the prototypes XML ID.
Therefore the string begins with a # followed by the XML ID, such as use="#prototypeId".

Another method is a SOM expression of the prototype, like use="Form1.#proto[0].protoTextField".
This one isn't that flexible as the one with the XML ID, because you have to correct each reference manually when the SOM expression of the prototype has changed.

Schritt 1 – Wechseln Sie in die XML-Quelle und platzieren Sie den Textcursor an der Stelle, wo ein neues referenzierendes Feld erstellt werden soll.
//
Step 1 – Switch to XML source view and place the text cursor where you want to add a new referencing field.



Schritt 2 – Geben Sie ein <field>-Tag mit dem use-Attribute in die XML-Quelle ein.
//
Step 2 – Add a <field>-Tag with the use-Attribute into the XML source.

<!-- Feld mit Prototyp-Referenz // Field with prototype reference -->
<field use="#protoTextField/>



Schritt 3 – Öffnen Sie die Design-Ansicht oder PDF-Vorschau, um das Ergebnis zu sehen.
//
Step 3 – Open the the Design view or PDF preview to check the results.




Hinweise
//
Hints

Zum Aktualisieren eines Prototypen stehen Ihnen alle Bedienfelder von Designer zur Verfügung. Nur sehen können Sie den Prototypen nicht, solange er unter "referenzierte Objekte" liegt. Bei kleinen Änderungen stört das nicht weiter, aber bei komplizierten Layouts schon. Dann sollten Sie temporär eine neue Seite erstellen und den Prototypen zum Bearbeiten hierher verschieben.

Die Änderungen an Prototypen sehen Sie nicht sofort bei den referenzierenden Objekten, da Designer das Template nicht neu läd.
Wechsel Sie daher in die XML-Quelle oder PDF-Vorschau oder ändern Sie mit Strg + Mausrad einfach die Zoomstufe, um ein Neuladen zu erzwingen.

Wenn Sie Eigenschaften eines referenzierenden Objekts ändern, werden für dieses Objekt die Änderungen in das Template übernommen und die des Prototypen ignoriert.
So können Sie z.B. die Schriftart des Prototypen übernehmen aber eine andere Schriftgröße und Farbe definieren.

To update prototypes you can use all panels in Designers UI. You only can't see it  as long it's located under "referenced objects". For little changes that isn't a problem, but for complex layouts it is. In those cases you should create a new page for temporary use and drag the prototype here for editing.

You wouldn't see you changes immediately at the referening objects as Designer doesn't reload the template.
To force the template reload you can either switch to the XML Source or PDF Preview or you just change the zoom settings with Ctrl + mousewheel.

If you change any property of an referencing object those changes will be saved in the template and the identical properties of the prototype are ignored.
So you can for example use the font of a prototype while using a separate setting for font size and color.


Beispiel-Formular
//
Sample form
https://files.acrobat.com/preview/6dc8d4f7-b7db-4e1b-af51-74230dc969b1

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.

21.11.2012

LiveCycle ES3 Service Pack 2

Adobe hat das zweite Service Pack (Version 10.0.4) für LiveCycle ES3 veröffentlicht.
Für den Designer bringt es aber kaum Änderungen und der Bug, mit dem Dateifilter im Öffnen-Dialog, der keine PDF-Dateien anzeigt, wenn als Dateityp "Adobe LiveCycle Designer-Dateien (*.pdf, *.xdp)" ausgewählt ist, wird durch das Update auch nicht behoben. 

Update: Der Bug mit dem Dateifilter im Öffnen-Dialog existiert nur in der deutschen Version von Designer.
Ich habe einen Weg gefunden das selbst zu patchen und werde schnellstmöglich hier posten.


Adobe has released the second service pack (version 10.0.4) for LiveCycle ES3.
For Designer this update does not bring much improvments.
It also doesn't fix a bug with the file filter in the open dialog, which does not show PDF files if the filter is set to "Adobe LiveCycle Designer Files (*.pdf, *.xdp)".


Update: The bug with the file filter in the open dialog only existst in the german version of Designer.
I found a way to patch by yourself and will post it asap.

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

Versionshinweise - LiveCycle ES3 Service Pack 2
//
Release Note - LiveCycle ES3 Service Pack 2
https://www.adobe.com/products/livecycle/pdfs/lc_es3_sp2_readme.pdf

25.09.2012

MailTo Macher Makro V1.0
//
MailTo Maker Macro V1.0

Vor einigen Monaten habe ich ein Makro zum Erstellen von Mail-Skripten in Schaltflächen entworfen.
Das funktionierte eigentlich ganz gut, hatte aber noch Verbesserungspotential.
Zwar konnte man damit die Empfängeradressen auch über SOM-Ausdrücke zur Laufzeit mit Feldwerte befüllen, aber jeweils nur von einem Feld.
Dasselbe war für den Betreff oder die Nachricht selbst gar nicht erst möglich.
Und dann war da noch das Problem, dass die hinzugefügten Skripte nur in der XML Quelle aber nicht im Skripteditor sichtbar waren.

Höchste Zeit für ein Update.
Nach reichlich Kopfzerbrechen kann das Makro nun viel flexibler eingesetzt werden als zuvor.
Mit den neuen Variablen können nun Teile der Empfängeradressen, des Betreff und der Nachricht zur Laufzeit mit Feldwerten aufgefüllt werden.
Auch mehrere Variablen hintereinander sind möglich, ebenso wie Variablen kombiniert mit gewöhnlichem Text.
Das Ergebnis ist nun auch unmittelbar im Skripteditor sichtbar, somit entfällt das nachträgliche Editieren der XML Quelle.


A couple of months ago I designed a macro to create mail scripts for buttons.
It worked but not very well and had room for improvements.
The receivers addresses could indeed be filled at runtime with field values using SOM expression but only on field at once.
And the same wasn't able for the subject nor message.
At least there was that nasty problem that the created scripts were not visible in the script editor but in the XML source.

It's about time for an Update.
After days of brain work the macro now is much more flexible than before.
You can add variables that will be used to fill portions of you receivers addresses, subject or message with field value at runtime.
You can use several variables at once and/or combine them with regular text.
The results now are in the script editor immediately.


Funktionsweise des Makro
//
How the macro works

Schritt 1 – Schaltfläche auswählen und Makro aufrufen
//
Step 1 – Select a button and execute the macro


Schritt 2 – Flex Dialog öffnet sich, ohne weitere Einstellungen
//
Step 2 – Flex Dialogs opens without further settings


Schritt 3 – Werte für Empfängeradresse(n), Betreff und Nachricht eingeben ...
//
Step 3 – Enter values for receiver adress(es), subject or message ...



Schritt 4 – ... oder Variablen zu diesen Felder hinzufügen.
//
Step 4 – ... or add variables to those fields.



Schritt 5 – Ein  Dialog informiert, wo das neue Skript hinzugefügt wurde.
//
Step 5 – A dialogs informs you where the new script was added to.





Schritt 6 – Das neue Skript ist im Skripteditor in click Event zu sehen.
//
Step 6 – The new script is visible under the click event in the script editor.





Aktualisierungen in Version 1.0.4
//
Updates in Version 1.0.4
  1. Anführungszeichen oder Apostrophe im Betreff und Nachricht werden nun automatisch escaped, damit die erzeugten Strings durch diese Zeichen nicht unterbrochen werden.
    //
    Quotation marks and apostrophe in the subject and message are now automatically escaped, so the generated string won't be interrupted by those characters.



MailTo Macher-Makro V1.0.4
//
MailTo Maker Macro V1.0.4
https://files.acrobat.com/a/preview/b01040ae-f0cb-4328-8ced-9e33928ee89f

16.07.2012

Lorem Ipsum Generator Makro
//
Lorem Ipsum Generator Macro

Formulardesign kann ganz schön laaaangatmig werden. Wenn man z.B. nur ein paar Layoutideen testen will, dann hält das Befüllen der Felder mit Platzhaltertexten eigentlich immer nur auf.
In anderen Programmen wie z.B. InDesign gibt es die Möglichkeit Platzhaltertexte (auch Blindtexte genannt) einzufügen, aber im Designer bislang leider nicht.
Bislang aber nur, denn mit diesem Makro kann man sich die Arbeit etwas erleichtern.
Einfach ein Text, Textfeld, Listenfeld oder eine Dropdownliste markieren, Makro aufrufen und die gewünschten Platzhaltertexte einstellen.
Ein finaler Klick auf OK macht dann den Rest. Wirklich ganz einfach, oder?!


Forms design can become sooo tedious. For example you only want to check out a few layout ideas, but the filling of fields with placeholder texts alsways suspends your work.
Other applications such as InDesign give you an opportunity to add placeholder texts (also know as dummy texts), but so far Designer does not.
So far, because with this macro you're now able to simplify your work.
Just select a text, text field, list field or dropdown list, start the macro und edit the desired placeholder texts.
A final click on OK, that's it. Really simply, isn't it?!



Dialog des Makros
//
Dialog of the macro




LoremIpsum Generator V1.0
https://cloud.acrobat.com/file/3d3a962c-53c1-41b9-bd3e-ae3166a2224e