Wiki-Quellcode von Platzhalter


Zeige letzte Bearbeiter
1 {{content/}}
2
3 Platzhalter werden für die Ersetzung von Formular- oder Systemwerten verwendet und stehen in [[Aktionen>>doc:Formcycle.Designer.Workflow.Actions.WebHome]], [[Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.WebHome]] sowie [[Datenbank-Abfragen>>Formcycle.UserInterface.Data.DBQueries.WebHome]] zur Verfügung.
4
5 == Verwenden von Platzhaltern ==
6
7 {{figure image="1_de_PlatzhalterEMail.png" group="platzhalter"}}
8 Symbol für das Öffnen einer Platzhalterauswahl an einem Options- und einem Textfeld im Aktionstyp [[E-Mail>>doc:Formcycle.Designer.Workflow.Actions.EMail]].
9 {{/figure}}
10
11 {{figure image="2_de_Platzhalter.png" width="150" group="platzhalter"}}
12 Die geöffnete Platzhalterauswahl. Hier kann ein Formularfeld ausgewählt werden, dessen Wert genutzt wird.
13 {{/figure}}
14
15 === Verwendung in Aktionen ===
16
17 Bei Optionsfeldern von Aktionen, die diese unterstützen, kann über das Symbol rechts die Platzhalterauswahl geöffnet werden.
18
19 === Verwendung in Templates ===
20
21 {{figure image="3_de_PlatzhalterTemplates.png" group="platzhalter"}}
22 Platzhalter können auch in Templates genutzt werden. Der Knopf //Platzhalter// öffnet das entsprechende Auswahlmenü.
23 {{/figure}}
24
25 Das Platzhaltermenü kann über den Knopf //Platzhalter// im Template-Editor geöffnet werden oder auch über die Tastenkombination //Strg// + //Leerzeichenzeichentaste//.
26
27 == Platzhaltertypen ==
28
29 {{id name="sec_form_placeholder"/}}
30
31 === Formularplatzhalter ===
32
33 {{panel monospace="true" title="Syntax"}}
34 [%<NameDesFormularelements>%]
35 {{/panel}}
36
37 Dieser Platzhalter wird ersetzt durch den Wert des Formularelements mit dem angegebenen Namen. Formularplatzhalter werden in Aktionen wie z.B. [[E-Mail>>doc:Formcycle.Designer.Workflow.Actions.EMail]], [[Text erzeugen>>doc:Formcycle.Designer.Workflow.Actions.CreateTextFile]], [[Datenbank>>doc:Formcycle.Designer.Workflow.Actions.SQLStatement]] sowie bei [[Templates>>doc:Formcycle.Designer.Workflow.Actions.HtmlResponsePage]] verwendet.
38
39 Beispielweise wird der Platzhalter //[%tfVorname%]// durch den Wert des [[Eingabefelds>>doc:Formcycle.Designer.Form.FormElements.Input]] mit Namen //Vorname// ersetzt.
40
41 === Spezielle Formularplatzhalter ===
42
43 Einige spezielle Formularplatzhalter existieren für alle Formulare:
44
45 ; [%xf-action%]
46 : Der Name der Schaltfläche, die zum Absenden verwendet wurde. Kann etwa genutzt werden, um über eine Bedingung bestimmte Aktionen nur auszuführen, wenn eine bestimmte Schaltfläche gedrückt wurde.
47 ; [%lang%]
48 : Verweist auf die Sprache, die beim Ausfüllen des Formulars verwendet wurde, z.B. //de//, //de-CH//, //en// oder //fr-FR//.
49
50 === Systemplatzhalter ===
51
52 {{panel monospace="true" title="Syntax"}}
53 [%$<Name>%]
54 {{/panel}}
55
56 Dieser Platzhalter wird ersetzt durch den entsprechenden Systemwert. Aktuell stehen folgende Systemplatzhalter in Aktionen und Templates zur Verfügung.
57
58 ; [%$CLIENT_ID%]
59 : Gibt die Mandant-ID des Formulars zurück.
60 ; [%$FORM_LINK%]
61 : Gibt die URL des Formulars zurück.
62 ; [%$FORM_PROCESS_LINK%]
63 : Gibt die URL des Formulars mit dem Inhalt des Vorgangs zurück.
64 ; [%$FORM_VERIFY_LINK%]
65 : Gibt die einmalige Bestätigungs-URL zurück (nötig für [[Double-Opt-In>>doc:Formcycle.UserInterface.MyForms.DoubleOptIn.WebHome]]).
66 ; [%$FORM_INBOX_NAME%]
67 : Gibt den Namen des Postfachs zurück, indem sich der Vorgang derzeit befindet.
68 ; [%$FORM_INBOX_LINK%]
69 : Gibt den Link des Postfachs zurück, indem sich der Vorgang derzeit befindet.
70 ; [%$FORM_INVITE_LINK%]
71 : Gibt den Einladungslink zum Formular zurück.
72 ; [%$PROCESS_ID%]
73 : Gibt die aktuelle Prozess-ID des Vorgangs zurück.
74 ; [%$PROJECT_ALIAS%]
75 : Alias des derzeitigen Formulars.
76 ; [%$PROJECT_ID%]
77 : Gibt die Formular-ID zurück.
78 ; [%$PROJECT_TITLE%]
79 : Titel des derzeitigen Formulars.
80 ; [%$RECORD_ID%]
81 : ID des derzeitigen Vorgangs.
82 ; [%$RECORD_READ%]
83 : Rückgabe ob der derzeitige Vorgang gelesen wurde. Liefert Boolean (true/false) zurück.
84 ; [%$RECORD_UNREAD%]
85 : Rückgabe ob der derzeitige Vorgang nicht gelesen wurde. Liefert Boolean (true/false) zurück.
86 ; [%$RECORD_ATTR.<customAttrKey>%]
87 : Auslesen von benutzerdefinierten Vorgangswerten (z.B. [%$RECORD_ATTR.loopCount%]). Damit können am Vorgang Werte gespeichert und in jeder Aktion darauf zugegriffen werden.
88 ; [%$SOURCE_SERVER%]
89 : Gibt den Namen des Servers zurück, auf welchem dieser bereitgestellt und abgesendet wurde (Name des {{fserver case="gen"/}} oder lokal).
90 ; [%$SOURCE_SERVER_URL%]
91 : Gibt die URL des Servers zurück, auf welchem dieser bereitgestellt und abgesendet wurde (Name des {{fserver case="gen"/}} oder lokal).
92 ; [%$STATUS_ID%]
93 : ID des derzeitigen Status.
94 ; [%$STATUS_NAME%]
95 : Name des derzeitigen Status.
96 ; [%$STATUS_TYPE%]
97 : Typ des derzeitigen Status. Diese vier Werte sind möglich: //RECEIVED// (Eingegangen), //SAVED// (Zwischengespeichert), //ERROR// (Fehlerstatus) and //CUSTOM// (Benutzerdefinierter Status, der durch den Nutzer angelegt wurde).
98 ; [%$TRIGGER.actionName%]
99 : Name der Aktion des bereitstellenden Ereignisses
100 ; [%$TRIGGER.taskName%]
101 : Name des Tasks, wo sich die Aktion des Ereignis befindet.
102 ; [%$TRIGGER.triggerName%]
103 : Name des Ereignisses, wo sich die Aktion des Ereignis befindet.
104 ; [%$COUNTER_CLIENT.<counterName>%]
105 : Der aktuelle Wert eines Mandantzählers.
106
107 ==== Parametrisierbare Systemplatzhalter ====
108
109 {{panel monospace="true" title="Syntax"}}
110 [%$&lt;Name&gt;(&lt;Parameter&gt;...)%]
111 {{/panel}}
112
113 ; [%$DATE("<format>", <lang>)%]
114 : Aktuelles Datum. Die Parameter sind optional. Ohne Parameter wird das Datum im Standardformat zurückgegeben. Durch die Parameter kann das Format und die Sprache bestimmt werden. Siehe [[SimpleDateFormat>>https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html]] für mehr Informationen zum Datumsformat. Beispiel: {{code language="none"}}[%$DATE("dd.MM.yyyy", de)%]{{/code}}.
115 ; [%$FORM_DATE_CREATED("<format>", <lang>)%]
116 : Erstellungsdatum des Vorgangs. Die Parameter sind optional. Ohne Parameter wird das Datum im Standardformat zurückgegeben. Durch die Parameter kann das Format und die Sprache bestimmt werden, wobei letztere sich auf die Benennung von Wochentagen und Monaten auswirkt. Siehe [[SimpleDateFormat>>https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html]] für mehr Informationen zum Datumsformat. Beispiel: {{code language="none"}}[%$FORM_DATE_CREATED("dd.MM.yyyy", de)%]{{/code}}
117 ; [%$FORM_DATE_MODIFIED("<format>", <lang>)%]
118 : Datum der letzten Änderung des Vorgangs. Die Parameter sind optional. Ohne Parameter wird das Datum im Standardformat zurückgegeben. Durch die Parameter kann das Format und die Sprache bestimmt werden, wobei letztere sich auf die Benennung von Wochentagen und Monaten auswirkt. Siehe [[SimpleDateFormat>>https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html]] für mehr Informationen zum Datumsformat. Beispiel: {{code language="none"}}[%$FORM_DATE_MODIFIED("dd.MM.yyyy", de)%]{{/code}}
119
120 {{id name="sec_user_variables"/}}
121
122 === Benutzerplatzhalter ===
123
124 {{id name="fig_prefill_user_variables"/}}
125 {{figure image="prefill_user_variables_de.png"}}Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.{{/figure}}
126
127
128 {{html wiki="true"}}
129 <div class='xm-figure xm-float-right xm-clear-h2' data-alt='Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='prefill_user_variables_de.png' width='300' group='$height' group='$group' title='Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.'/}}<div class='xm-figure-caption'>Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.</div></div></div>
130 {{/html}}
131
132
133
134 {{html wiki="true"}}
135 <div class='xm-figure xm-float-right xm-clear-h2' data-alt='Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='prefill_user_variables_de.png' width='300' group='$height' group='$group' title='Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.'/}}<div class='xm-figure-caption'>Vorbefüllung von Formularfeldern mit Daten des angemeldeten Benutzers.</div></div></div>
136 {{/html}}
137
138
139 Benutzerplatzhalter können in [[Aktionen>>doc:Formcycle.Designer.Workflow.Actions.WebHome]], [[Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.WebHome]], [[Datenbank-Abfragen>>Formcycle.UserInterface.Data.DBQueries.WebHome]] und direkt in [[Formularelementen>>Formcycle.Designer.Form.FormElements.WebHome]] zur Vorbefüllung des Formulars verwendet werden (siehe [[Abbildung>>||anchor="fig_prefill_user_variables"]]).
140
141 {{panel monospace="true" title="Syntax"}}
142 [%$&lt;Benutzerobjekt&gt;.&lt;Attribut&gt;%]
143 {{/panel}}
144
145 Über verschiedene Benutzerobjekte kann auf die Informationen der angemeldeten Benutzer zugrgriffen werden (Benutzerprofil). Wird der Platzhalter ohne Attribut angegeben (z.b. [%$USER%]), so werden sämtliche Benutzerinformation im [[JSON>>https://de.wikipedia.org/wiki/JavaScript_Object_Notation]]-Format ausgegeben.
146
147 Für die sinnvolle Verwendung von Benutzerplatzhaltern ist es nötig, dass eine [[Formularanmeldung>>doc:Formcycle.UserInterface.MyForms.Access.WebHome||anchor="form_login"]] am Formular konfiguriert ist. Ist dies nicht der Fall, ist das Benutzerobjekt mit einem anonymen Nutzer vorbelegt.
148
149 ==== Benutzerobjekte ====
150
151 ; [%$USER%]
152 : Benutzerobjekt für den Zugriff auf den aktuellen Benutzer.
153
154 ; [%$LAST_USER%]
155 : Benutzerobjekt für den Zugriff auf den letzten Benutzer.
156
157 ; [%$INITIAL_USER%]
158 : Benutzerobjekt für den Zugriff auf den Benutzer, der den Vorgang angelegt hat.
159
160 ==== Attribute ====
161
162 Mit den Attributen eines Benutzerobjektes können gezielt Informationen über den Benutzer ermittelt werden. Die folgenden Attribute stehen bei allen Benutzern zur Verfügung. Auch wenn diese Attribute immer zur Verfügung stehen, müssen sie nicht immer einen Wert haben. Ob das Attribut einen Wert besitzt, hängt davon ab mit welcher [[Authentifizierungsmethode>>doc:Formcycle.UserInterface.UserSettings.ExternalUsers.WebHome]] sich der Benutzer angemeldet hat.
163
164 Beispiel: Mit dem Platzhalter **[%$USER.mail%]** gelangt man an die E-Mailadresse des angemeldeten Benutzers.
165
166 ; authTypeId
167 : ID des [[Authentifikators>>doc:Formcycle.UserInterface.UserSettings.ExternalUsers.WebHome]], der vom Benutzer verwendet wurde, um sich anzumelden.
168 ; displayName
169 : Anzeigename des angemeldeten Benutzers
170 ; familyName
171 : Nachname des angemeldeten Benutzers
172 ; firstName
173 : Vorname des angemeldeten Benutzers
174 ; gender
175 : Geschlecht des angemeldeten Benutzers
176 ; groups
177 : Namen der Gruppen, denen der Benutzer angehört
178 ; id
179 : ID des angemeldeten Benutzers. (System-ID bei FORMCYCLE-Benutzern)
180 ; linkedId
181 : Ein Benutzerprofil kann einen sog. "linked identifier" haben. Dies ist der Identifikator eines anderen Benutzerprofils.
182 ; locale
183 : Sprache des angemeldeten Benutzers
184 ; location
185 : Ort des angemeldeten Benutzers
186 ; mail
187 : E-Mailadresse des angemeldeten Benutzers
188 ; phone
189 : Telefonnummer des angemeldeten Benutzers
190 ; pictureUrl
191 : URL zum Profilbild des angemeldeten Benutzers
192 ; profileUrl
193 : URL zum Profil des angemeldeten Benutzers
194 ; rawData
195 : Die gesamte Rohdaten des angemeldeten Benutzers im [[JSON>>https://de.wikipedia.org/wiki/JavaScript_Object_Notation]]-Format. Abhängig vom verwendeten Authentifikator können die Rohdaten weitere Benutzerinformationen enthalten, die nicht über die Attribute des Benutzerobjektes abgebildet werden.
196 ; role
197 : Rolle des angemeldeten Benutzers
198 ; title
199 : Titel des angemeldeten Benutzers
200 ; typedId
201 : Typ des [[Authentifikators>>doc:Formcycle.UserInterface.UserSettings.ExternalUsers.WebHome]], der vom Benutzer verwendet wurde, um sich anzumelden.
202 ; userName
203 : Benutzername des angemeldeten Benutzers
204
205 {{id name="sec_appointment_variables"/}}
206
207 === Terminplatzhaler ===
208
209 Terminplatzhalter können verwendet werden, wenn mit dem Formular [[Termine>>doc:Formcycle.Designer.Form.FormElements.Appointment.WebHome]] gebucht werden.
210
211 {{panel monospace="true" title="Syntax"}}
212 [%$&lt;Name&gt;%]
213 {{/panel}}
214
215 ; [%$APPOINTMENT_LIST%]
216 : Erzeugt eine Zusammenfassung der mit dem Vorgang gebuchten Termine in Form einer //ul//-HTML-Liste. Für jeden Termin wird zudem ein Button erzeugt, mit welchem der gebuchte Termin zu einem Kalender hinzugefügt werden kann. Ist für die Verwendung in HTML-Templates angedacht.
217 ; [%$APPOINTMENT_LINK%]
218 : Erzeugt einen Link zu einer iCal-Datei, die sämtliche Termine des Vorgangs beinhaltet.
219
220 {{id name="sec_system_placeholder_html"/}}
221
222 === Systemplatzhalter für HTML-Templates ===
223
224 {{panel monospace="true" title="Syntax"}}
225 [%$&lt;Name&gt;(&lt;Parameter1&gt;,&lt;Parameter2&gt;)%]
226 {{/panel}}
227
228 Zusätzlich zu den allgemeingültigen Systemplatzhaltern gibt es noch einige weitere Systemplatzhalter, welche nur innerhalb eines [[HTML-Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.HTML.WebHome]] verwendet werden können. Diese dienen zum Herunterladen von Anhängen und sind hierfür nur innerhalb der Browser-Session nach dem Absenden eines Formulars nutzbar.
229
230 ; [%$ATTACHMENT_LIST%]
231 : Stellt alle an einem Vorgang verfügbaren Anhänge (Attachments) in einer Liste zum Herunterladen bereits. Die erzeugte Liste wird als //ul//-HTML-Element in das Tempalte eingefügt.
232 ; [%$ATTACHMENT_ZIP=Dateiname,Link-Text%]
233 : Erzeugt einen Link zum Herunterladen aller Anhänge eines Vorgangs. Die Parameter //Dateiname// sowie //Link-Text// sind optional, sodass dieser Systemplatzhalter in folgenden Varianten genutzt werden kann.
234 :; [%$ATTACHMENT_ZIP=Dateiname,Link-Text%]
235 :: Erzeugt einen Link mit dem Text //Link-Text// zum Herunterladen der Datei, die den Dateinamen //Dateiname// erhält.
236 :; [%$ATTACHMENT_ZIP=Dateiname%]
237 :: Erzeugt einen Link mit dem Text //Dateiname// zum Herunterladen der Datei, die den Dateinamen //Dateiname// erhält.
238 :; [%$ATTACHMENT_ZIP%]
239 :: Erzeugt einen Link mit dem Text //attachment.zip// zum Herunterladen der Datei, die den Dateinamen //attachment.zip// erhält.
240 ; [%$ATTACHMENT=Anhang,Link-Text,Dateiname%]
241 : Erzeugt einen Link zum Download eines einzelnen Anhangs eines Vorgangs mit dem Namen "Anhang". Dieser muss für eine korrekte Funktion den Namen einer erzeugten bzw. an den Vorgang angehangenen Datei entsprechen. Die Parameter "Link-Text" und "Dateiname" sind hierbei optional, sodass sich folgende Verwendungsmöglichkeiten ergeben:
242 :; [%$ATTACHMENT=Anhang,Link-Text,Downloadname%]
243 :: Erzeugt einen Link mit dem Text //Link-Text// zum Herunterladen des Anhangs mit dem Namen //Anhang//, der den Dateinamen //Dateiname// erhält.
244 :; [%$ATTACHMENT=Anhang,Link-Text%]
245 :: Erzeugt einen Link mit dem Text //Link-Text// zum Herunterladen des Anhangs mit dem Namen //Anhang//, der den Dateinamen //Anhang// erhält.
246 :; [%$ATTACHMENT=Anhang%]
247 :: Erzeugt einen Link mit dem Text //Anhang// zum Herunterladen des Anhangs mit dem Namen //Anhang//, der den Dateinamen //Anhang// erhält.
248
249 Zusätzlich ist bei dieser Art von Platzhaltern zu beachten, dass sie automatisch aus dem Template entfernt werden, wenn keine entsprechende Datei gefunden wurde bzw. erzeugt werden konnte.
250
251 === Textbausteinplatzhalter ===
252
253 {{panel monospace="true" title="Syntax"}}
254 [%$$&lt;Name&gt;%]
255 {{/panel}}
256
257 Ein Textbausteinplatzhalter gibt den Inhalt eines [[Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.WebHome]] (zum Beispiel [[Text->>doc:Formcycle.UserInterface.FilesAndTemplates.Text]], [[Mail->>doc:Formcycle.UserInterface.FilesAndTemplates.Email]], [[Link-Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.Link]]) zurück und wird beispieslweise in Aktionen vom Typ [[E-Mail>>doc:Formcycle.Designer.Workflow.Actions.EMail]] verwendet.
258
259 === Aktionsplatzhalter ===
260
261 {{panel monospace="true" title="Syntax"}}
262 [%$&lt;Aktionsname&gt;.&lt;RückgabeWert&gt;%]
263 {{/panel}}
264
265 Einige Aktionen haben Rückgabewerte, die über diesen Platzhalter ausgelesen werden können.
266
267 Sie sehen ähnlich wie Systemplatzhalter aus, haben aber im Unterschied zu diesen einen Punkt als Trennzeichen zwischen dem Namen der Aktion und dem Rückgabewert. Folgende Rückgabebezeichner sind vorhanden.
268
269 ; [%$<Aktionsname>.SUCCESS%]
270 : Rückgabe ob Aktion erfolgreich ausgeführt wurde. Liefert Boolean (true/false) zurück.
271 ; [%$<Aktionsname>.COUNT%]
272 : Dieser Platzhalter wird im neuen Workflow nicht unterstützt.
273 : Rückgabe der Anzahl von Ergebnissen. Liefert Integer-Wert zurück.
274 ; [%$<Aktionsname>.RESULT%]
275 : Rückgabe eines einzelnen Ergebnis. Liefert String-Wert zurück.
276 ; [%$<Aktionsname>.RESULT[<Index>].<Bezeichner>%]
277 : Einige Aktionen liefern mehrere Ergebnisse zurück (//List<Map<String,String>>// in Java). Der Bezeichner ist dabei fest durch die Verarbeitung definiert. Wird häufig bei Plugins verwendet, falls mehrere Ergebnisse zurückgegeben werden.
278 ; [%$<Aktionsname>.ERROR_CODE%]
279 : Der geworfene Fehler-Code im Fehlerfall der Aktion.
280 ; [%$<Aktionsname>.ERROR_MESSAGE%]
281 : Die geworfene Fehler-Nachricht im Fehlerfall der Aktion.