Wiki-Quellcode von URL-Parameter


Zeige letzte Bearbeiter
1 {{content/}}
2
3 Bei einem Formularaufruf können zusätzliche Parameter an die URL angehängt werden. Wie bei URL-Parametern üblich werden diese von der eigentlichen URL durch ein **?** getrennt und untereinander durch ein **&** separiert. Somit ergibt sich folgendes Muster:
4
5 {{code language="none"}}
6 http://<host>//formcycle/form/alias/1/demo?<Feld1-Name>=<Feld1-Wert>&<Feld2-Name>=<Feld2-Wert>
7 {{/code}}
8
9 Falls es notwendig ist, Sonderzeichen zu verwenden, so müssen diese [[entsprechend maskiert>>url:https://de.wikipedia.org/wiki/URL-Encoding]]. Wenn etwa ein URL-Parameter //tfFirma// mit dem Wert //Meier & Bäcker eG// angefügt werden soll:
10
11 {{code language="none"}}
12 http://<host>//formcycle/form/alias/1/demo?tfFirma=Meier%20%26%20B%C3%A4cker%20eG
13 {{/code}}
14
15 == Verwendung von URL-Parametern ==
16
17 Beim Aufruf eines Formulars ist es möglich die angezeigten Felder vorzubefüllen oder deren bestehende Daten zu ändern. Dies wird über URL-Parameter umgesetzt. Hierbei wird beim Aufbau des Formulars versucht anhand des Parameternamens ein entsprechendes Formularfeld zu ermitteln und diesem den entsprechenden Wert zuzuweisen. Zu beachten ist hierbei, dass dieser Mechanismus sowohl beim initialen Anzeigen eines Formulars, als auch bei einer Wiederanzeige aus einem Vorgang heraus zum Einsatz kommt. Da die URL-Parameter eine höhere Gewichtung als die Eingabedaten des Vorgangs haben werden hierbei ggf. bestehende Formular-Werte überschrieben.
18
19 == Beispiele ==
20
21 === Vorbefüllen von Textfeld ===
22
23 {{figure image="designer_url_param_textfield_de.png"}}
24 Notwendige Einstellungen zum Vorbefüllen eines Texteingabefelds im {{designer case="dat"/}}.
25 {{/figure}}
26
27 {{figure image="designer_url_param_textfield_demo_de.png"}}
28 Durch Übergabe des URL-Parameters //tfMail// wird das E-Mail-Feld automatisch mit der übergebenen E-Mail befüllt.
29 {{/figure}}
30
31 Im Formular wird ein [[Eingabefeld>>doc:Formcycle.Designer.Form.FormElements.Input]] mit dem Namen //tfMail// angelegt. Beim Aufrufen wird dann an die URL der Parameter //tfMail// mit einer E-Mail-Adresse hinzugefügt. Die URL könnte dann also wie folgt aussehen:
32
33 {{code language="none"}}
34 http://<host>/formcycle/form/alias/1/demo?tfMail=demo@example.com
35 {{/code}}
36
37 Wir rechts in der Abbildung zu sehen wird so der Wert beim Öffnen des Formulars vorbefüllt.
38
39 === Vorbefüllen von Auswahlfeld ===
40
41 {{figure image="designer_url_param_select_de.png"}}
42 Notwendige Einstellungen zum Vorbefüllen eines Auswahlelements im {{designer case="dat"/}}.
43 {{/figure}}
44
45 {{figure image="designer_url_param_select_demo_de.png"}}
46 Durch Übergabe des URL-Parameters //selSex// wird das Geschlecht automatisch mit der übergebenen Option befüllt.
47 {{/figure}}
48
49 Bei [[Auswahlfeldern>>doc:Formcycle.Designer.Form.FormElements.Selection]] ist zu beachten, dass bei diesen nicht der angezeigte, sondern vielmehr der an dieser Auswahl hinterlegte Wert (value-Attribute) übergeben werden muss.
50
51 Im Formular wird ein Auswahlfeld mit dem Namen //selSex// angelegt. Als Optionen gibt es //männlich// mit dem Wert //m// und //weiblich// mit dem Wert //w//. Die URL zur Vorbelegung könnte dann wie folgt aussehen:
52
53 {{code language="none"}}
54 http://<host>/formcycle/form/alias/1/demo?selSex=w
55 {{/code}}
56
57 Wie rechts in der Abbildung zu sehen wird so der Wert beim Öffnen des Formulars vorbefüllt.
58
59 {{info}}
60 Die Vorbefüllung von Formularfeldern ist nur auf nicht dynamischer Ebene möglich. Somit können Felder innerhalb von dynamischen Elementen lediglich in ihrer ersten Ausprägung befüllt bzw. manipuliert werden. Des Weitern ist es nicht möglich die Anzahl der Wiederholungen von dynamischen Elementen zu beeinflussen.
61 {{/info}}
62
63 === Ändern des Formular-Layouts ===
64
65 {{figure image="CSSTheme.PNG"}}
66 Um ein Formular mit einem anderen Layout aufzurufen, muss der URL-Parameter //xfc-rp-theme// verwendet werden. Als Wert muss die UUID des CSS-Layout verwendet werden. Diese wird rechts im Detailsfenster (1) angezeigt.
67 {{/figure}}
68
69 Verschiedene Formular-Layouts können unter [[Layout (CSS)>>Formcycle.UserInterface.FilesAndTemplates.Layout]] angelegt werden. Im Designer wird dem Formular ein Layout zugewiesen. Um das Formular mit einem anderen Layout aufzurufen, kann optional ein URL-Parameter übergeben werden.
70
71 Der Name des URL-Parameters lautet //xfc-rp-theme//. Als Wert muss die UUID des Formular-Layout angegeben werden. Die UUID wird an jedem CSS-Layout im Menü [[Layout (CSS)>>Formcycle.UserInterface.FilesAndTemplates.Layout]] angezeigt.
72
73 {{code language="none"}}
74 http://<host>/formcycle/form/alias/1/demo?xfc-rp-theme=UUID
75 http://<host>/formcycle/form/alias/1/demo?xfc-rp-theme=8b4a9c2d-34d9-4cff-8759-9b54ed4b0ff1
76 {{/code}}