Zweck und Einsatz
Über diese Dokumentfunktion können Inhalte verknüpft werden, um diese im Dokument zu integrieren.
Angenommen Sie nutzen die Formulare (Forms) Funktion, um ein Datum und einen Titel vom Benutzer abzufragen und möchten diese Daten gemeinsam in einer Fusszeile platzieren.
Dann können Sie über diese Dokumentfunktion das Datumsfeld und das Textfeld in einem Field zusammen ausgeben. So können Sie auch handhaben, was geschieht, wenn nicht beide Forms-Felder vom Benutzer ausgefüllt werden.
Grundaufbau
<FieldsConfiguration> <Fields> <!-- Formularelemente und Gruppen hier einfügen --> </Fields> </FieldsConfiguration>
Elemente
Attribute, die bei allen Elementen erforderlich sind:
Attributname | Beschreibung |
---|---|
| Wird zur Identifikation benötigt. Darf keine Leerzeichen enthalten und muss eindeutig sein. |
Text
<FieldsConfiguration> <Fields> <Text Name="Page" translate-Value="Content.Page" /> </Fields> </FieldsConfiguration>
Attribute für Text
Attributname | Beschreibung |
---|---|
| Vordefinierter Text, den der Benutzer bearbeiten kann. |
FormattedText
FormattedText erlaubt das Einfügen von formatiertem Text. FormattedText ist sowohl ein Typ von Globalen Übersetzungen als auch eine Art Textbausteine.
Beim Einfügen mittels Globale Übersetzungen ist es möglich, abhängig von Profildaten oder selektierten Daten in Forms, unterschiedlich formatierte Textpassagen in einem Inhaltssteuerelement im Dokument auszugeben. Oft genutzt wird das beispielsweise in Kopf- und Fusszeilen, weil dort oft fette und nicht-fette Styles in einem Inhaltssteuerelement zum Zuge kommen.
Attribute für FormattedText
Es gibt es keine weiteren Attribute. Die Dynamisierung von Inhalt und Daten wird im Code
-Element mit JavaScript und software-eigenen Funktionen ermöglicht. Die Dokumentation dazu folgt.
<FieldsConfiguration> <Fields> <!-- FormattedText als globale Übersetzung holen --> <FormattedText Name="EnclosuresTitle"> <Code>$.translations.getFormattedText("FormattedTexts.EnclosuresTitle")</Code> </FormattedText> <!-- FormattedText als Textbaustein holen --> <FormattedText Name="SimpleSnippet"> <Code>$.snippets.getFormattedText("FormattedTexts.SimpleSnippet")</Code> </FormattedText> </Fields> </FieldsConfiguration>
WordContent
Das Field vom Typ WordContent erlaubt das dynamische Einfügen von mehreren Textabschnitten in eine Vorlage. Zusammen mit der Dokumentfunktion Forms können so komplexere Vorlagen umgesetzt oder mehrere Vorlagen in eine konsolidiert werden.
<FieldsConfiguration> <Fields> <WordContent Name="Introduction"> <Code>$.snippets.getWordContent("Introduction")</Code> </WordContent> </Fields> </FieldsConfiguration>
Attribute für WordContent
Es gibt es keine weiteren Attribute. Das Einfügen von WordContent wird im Code
-Element mit JavaScript und software-eigenen Funktionen ermöglicht. Die Dokumentation dazu folgt.
Date
<FieldsConfiguration> <Fields> <Date Name="CreateDate"> <Code>$("Forms.Date").Value</Code> </Date> </Fields> </FieldsConfiguration>
Attribute für Date
Es gibt es keine weiteren Attribute.
YesNo
<FieldsConfiguration> <Fields> <YesNo Name="InsertPartnerLogo" Value="true" /> </Fields> </FieldsConfiguration>
Attribute für YesNo
Attributname | Beschreibung |
---|---|
| Vordefinierter Wert des Eintrags, den der Benutzer bearbeiten kann. |
Picture
<FieldsConfiguration> <Fields> <Picture Name="PartnerLogo" Asset="\\fileshare\PartnerLogo.png" /> </Fields> </FieldsConfiguration>
Attribute für Picture
Attributname | Beschreibung |
---|---|
| Angabe des Laufwerkpfades zum Bild. Dabei muss sichergestellt sein, dass jede Benutzer-Maschine auf das Bild zugreifen kann. |
GlobalFields
Über das Element GlobalFields
kann ein global abgelegtes Field geholt werden.
<FieldsConfiguration> <Fields> <GlobalFields Key="Fields.Report" /> </Fields> </FieldsConfiguration>
Mehr Informationen zu den Globalen Konfigurationen sind hier zu finden: https://primesoft-group.atlassian.net/wiki/spaces/PDT/pages/31457334/Globale+Konfigurationen#Umgang-mit-typisierten-Feldern.
Ein konkretes Beispiel zum Erkennen des Zusammenhangs zwischen dem globalen Eintrag und der Referenz auf einen globalen Eintrag gibt es hier: https://primesoft-group.atlassian.net/wiki/spaces/PDT/pages/31457334/Globale+Konfigurationen#Globale-Eintr%C3%A4ge-in-den-Vorlagen-referenzieren.
Attribute für GlobalFields
Die Referenz auf einen globalen Eintrag passiert mittels dem Key
-Attribut. Wählt man dieses aus, wird einem automatisch eine Liste mit allen zur Verfügung stehenden globalen Einträgen angezeigt.
Attributname | Beschreibung |
---|---|
| Die ID des globalen Eintrags, der referenziert werden soll. |
Beispiel
<FieldsConfiguration> <Fields> <!-- Platzhalter befüllen vom Layout --> <Picture Name="PartnerLogo" Asset="\\e123\User\Muster\BeispielLogo.PNG" /> <Text Name="Page" Value="Seite" /> <!-- FormattedText holen --> <FormattedText Name="Title"> <Code>$.translations.getFormattedText("FormattedTexts.FormattedTitle")</Code> </FormattedText> <!-- Daten im Inhalt der Vorlage --> <Text Name="Greeting" translate-Value="Greetings.KindRegards1" /> <!-- Globaler Eintrag referenzieren --> <GlobalFields Key="Letters.Subject" /> <!-- WordContent-Textbaustein holen --> <WordContent Name="Introduction"> <Code>$.snippets.getWordContent("Introduction")</Code> </WordContent> </Fields> </FieldsConfiguration>
Fields in Vorlagen in Office
Wie bereits in https://primesoft-group.atlassian.net/wiki/x/EgDCAQ erläutert, werden die Fields anschliessend manuell in die Vorlage eingefügt. Dabei werden sie je nach Typ als bestimmtes Inhaltssteuerelement eingefügt, wodurch zwischen primedocs und dem Dokument ein DataBinding hergestellt wird. DataBindings werden in Dokumenten von primedocs nachverfolgt und die Fields bei der Dokumentgenerierung und bei einer Dokumentaktualisierung laufend validiert.
Folgende Tabelle zeigt, welcher Field-Typ als welches Inhaltssteuerelement in die Vorlage eingefügt wird:
Field-Typ | Inhaltssteuerelement |
---|---|
Text | PlainText (Nur-Text) |
FormattedText | RichText |
WordContent | RichText |
Date | Date |
YesNo | Kann nicht eingefügt werden. |
Picture | Image |
Als Ergänzung zeigt folgende Matrix, welcher Field-Typ in welchen Office-Anwendungen verwendet werden kann:
Word | Outlook (web) | PowerPoint | Excel | |
---|---|---|---|---|
Text | ✔️ | ✔️ | ✔️ | ✔️ |
FormattedText | ✔️ | ✔️* | ✔️ | ❌ |
WordContent | ✔️ | ❌ | ❌ | ❌ |
Date | ✔️ | ❌ | ❌ | ❌ |
YesNo | ❌ | ❌ | ❌ | ❌ |
Picture | ✔️ | ✔️ | ✔️ | ✔️ |
* Outlook-E-Mails und -Signaturen werden in der webfähigen Outlook-Version nur noch in HTML gespeichert. Daraus folgt:
Globale Übersetzungen vom Typ FormattedText
können über das FormattedText
-Field in Outlook-Vorlagen beliebige HTML-Elemente enthalten und sind somit flexibler als globale Übersetzungen, die in Word- oder PowerPoint-Vorlagen eingefügt werden.
Eine Liste der erlaubten HTML-Elemente in Word und PowerPoint-Vorlagen finden Sie hier: https://primesoft-group.atlassian.net/wiki/spaces/PDT/pages/398327828/FormattedText#M%C3%B6gliche-HTML-Elemente