Das Versenden eines XFA-Formulars per E-Mail-Anhang direkt aus der Formular heraus ist sehr praktisch.
Blöd nur, dass der Empfänger immer ein Formular erhält, indem er genauso viel machen kann wie man selbst.
Manchmal will man aber, dass er Empfänger das Formular nur noch ansehen, aber nicht verändern kann.
Um das Formular einzuebnen (Flattening) kann man das Formular nun entweder durch einen PDF-Drucker schicken, wodurch es alle Interaktivität verliert oder auf die sauteuren LiveCycle ES/ES2 Produkte zurückgreifen.
Beides ist meist keine Option, da zu umständlich oder eben teuer.
Mit ein wenig JavaScript können aber einen Workaround bauen, der zwar keine echte Einebnung des Formulars vornimmt, aber im Groben auf das Selbe hinausführt.
Dieses Beispiel verwendet einen Mail-Button, der vor dem Änhängen des Formulars an die E-Mail alle Schaltflächen versteckt und Formularfelder auf schreibgeschützt stellt.
Der Empfänger erhält somit ein augescheinlich eingeebnetes Formular, dass er nur noch lesen kann.
Sending a form via mail directly through a button within the form is very comfortable.
Not so good is that the receiver always get the same functionality of the form as the sender.
What can you do, to send a read-only form to the receivers?
Generally you have two options.
One is to print the form with a pdf-printer to flatten it completely and lose all functionality.
The other is an expensive LiveCycle ES/ES2 product, that does the same.
Both are not the first choice.
But, JavaScript offers you the possibility to programm a workaround.
Well, you will not be able to real flatten the forms, but it will serve the same purpose.
This example form has a mail button which mails, but also hides all buttons and protect all form fields against changes just before the form is attached to the mail.
The receiver so will get an uneditable form.
Beispiel // Example:
https://acrobat.com/#d=stxzLv*Gou6uhB0DfgoQdg
Suche // Search:
17.02.2010
19.01.2010
Mehrsprachige Formulare
//
Multilingual forms
In manchen Situationen ist es erforderlich ein Formular in mehrere Sprachen verfügbar zu machen.
Nun kann man dafür natürlich jeweils ein separates Formular pro Sprache erstellen und verteilen, aber wenn das Formular mal aktualisiert werden muss, müsen gleich alle Sprachversionen überarbeitet werden.
Das kann unnötig viel Zeit kosten.
Dieses Beispiel zeigt Ihnen, wie sie ein mehrsprachiges Formular erstellen können, bei dem Sie die Sprache zur Laufzeit ganz einfach ändern können.
Erstellen Sie ein Scriptobjekt im Root-Knoten ihres Formulars (unter Formular1) und benennen Sie es "FormLanguages".
In diesen Scriptobject benötigen Sie eine Funktion "ChangeFormLanguages" zum Deklarieren der Eigenschaften und Formularobjekte, deren Sprache sie ändern wollen.
Für jede Sprache, kommt dann jeweils noch eine Funktion "GermanCaption" & "EnglishCaption" dazu, die die deklarierten Objekte und Eigenschaften mit neuen Wörtern füttert.
There are situation you need a form present in several languages.
Of course you can create and distribute the form as a separate file for each language.
But what if you need to update the form? Then you have to update each single form, that can be a waste of time.
In this example you can see, how to create a multilingual form, where you can easily change the language easy during runtime.
Create a script object in the root node of your form (under form1) and name it "FormLanguages".
In this script object you have to put a function "ChangeFormLanguage" to define all the form object and properties you would like to change the language for.
For every singe language you also need a function "GermanCaption" & "EnglishCaption" etc. with the words for the predefined objects and properties.
Scriptobjekt- Funktion zu Deklarieren der zu veränderden Formularobjekte //
Script Object - Function to define changable form objects:
Funktionen mit den Wörtern in der jeweiligen Sprache // Functions with the language specific words:
Finally you need an object to select the desired language.
This can be a drop down field or a radio button list.
JavaScript für Dropdown Feld // JavaScript for drop down Field:
Deutsche Beschriftungen // German Captions:
Englische Beschriftungen // English Captions:
Beispiel // Example:
https://acrobat.com/?d=nEDFzJRnPT-dLJgwONSIbQ
Nun kann man dafür natürlich jeweils ein separates Formular pro Sprache erstellen und verteilen, aber wenn das Formular mal aktualisiert werden muss, müsen gleich alle Sprachversionen überarbeitet werden.
Das kann unnötig viel Zeit kosten.
Dieses Beispiel zeigt Ihnen, wie sie ein mehrsprachiges Formular erstellen können, bei dem Sie die Sprache zur Laufzeit ganz einfach ändern können.
Erstellen Sie ein Scriptobjekt im Root-Knoten ihres Formulars (unter Formular1) und benennen Sie es "FormLanguages".
In diesen Scriptobject benötigen Sie eine Funktion "ChangeFormLanguages" zum Deklarieren der Eigenschaften und Formularobjekte, deren Sprache sie ändern wollen.
Für jede Sprache, kommt dann jeweils noch eine Funktion "GermanCaption" & "EnglishCaption" dazu, die die deklarierten Objekte und Eigenschaften mit neuen Wörtern füttert.
There are situation you need a form present in several languages.
Of course you can create and distribute the form as a separate file for each language.
But what if you need to update the form? Then you have to update each single form, that can be a waste of time.
In this example you can see, how to create a multilingual form, where you can easily change the language easy during runtime.
Create a script object in the root node of your form (under form1) and name it "FormLanguages".
In this script object you have to put a function "ChangeFormLanguage" to define all the form object and properties you would like to change the language for.
For every singe language you also need a function "GermanCaption" & "EnglishCaption" etc. with the words for the predefined objects and properties.
Scriptobjekt- Funktion zu Deklarieren der zu veränderden Formularobjekte //
Script Object - Function to define changable form objects:
function ChangeFormLanguage(L01, L02, L03)
{
xfa.form.form1.Page1.FirstName.caption.value.text.value = L01;
xfa.form.form1.Page1.LastName.caption.value.text.value = L02;
xfa.form.form1.Page1.Age.caption.value.text.value = L03
}
Funktionen mit den Wörtern in der jeweiligen Sprache // Functions with the language specific words:
function GermanCaption()Das kann z.B. eine Dropdown-Feld oder eine Optionsliste sein.
{
FormLanguages.ChangeFormLanguage( "Vornahme:",
"Nachname:",
"Alter:";
}
function EnglishCaption()
{
FormLanguages.ChangeFormLanguage( "First name.",
"Last name:",
"Age:";
}
Finally you need an object to select the desired language.
This can be a drop down field or a radio button list.
JavaScript für Dropdown Feld // JavaScript for drop down Field:
if(xfa.event.newText == "Deutsch")
{
xfa.form.form1.FormLanguages.GermanCaption();
}
if(xfa.event.newText == "English")
{
xfa.form.form1.FormLanguages.EnglishCaption();
}
Deutsche Beschriftungen // German Captions:
Englische Beschriftungen // English Captions:
Beispiel // Example:
https://acrobat.com/?d=nEDFzJRnPT-dLJgwONSIbQ
Abonnieren
Posts (Atom)





