Von Version < 50.1 >
bearbeitet von nlo
am 10.05.2019, 10:55
Auf Version < 1.2 >
bearbeitet von gru
am 13.03.2019, 16:36
< >
Änderungskommentar: Update document after refactoring.

Zusammenfassung

Details

Seiteneigenschaften
Titel
... ... @@ -1,1 +1,1 @@
1 -Quellen
1 +Sources
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.nlo
1 +XWiki.gru
Inhalt
... ... @@ -1,95 +1,33 @@
1 1  {{content/}}
2 2  
3 -{{id name="fig_data_source"/}}
4 -{{figure image="data_source_de.png"}}Konfigurationsoberfläche zum Anlegen von Datenquellen: (1) Liste existierender Datenquellen, (2) Bereich zum Editieren der selektierten Datenquelle, (3) Einstellungspanel der Datenquelle, (4) Servlet-URL der Datenquelle, um auf diese zugreifen zu können.{{/figure}}
5 -
6 6  Die Quellen bzw. Datenquellen werden als Text im Format CSV, JSON oder XML hinterlegt und können über den {{designer case="acc"/}} bzw. das Formular verarbeitet werden.
7 7  
8 8  Um auch im Skriptbereich per Javaskript auf die Datenquellen Zugriff zu haben, werden alle Datenquellen in eine JSON-Struktur umgewandelt und im Objekt {{code}}XFC_METADATA.urls.datasource_[csv|json|xml]{{/code}} zugänglich gemacht. Die Struktur dieser JSON-Struktur für die verschiedenen Datenquellen ist im jeweiligen Abschnitt erläutert.
9 9  
10 -== Anlegen einer Datenquelle ==
7 +== CSV ==
11 11  
12 -Öffnen Sie das Modul "Daten > Quellen" und klicken Sie auf die Schaltfläche "Neu" {{ficon name="plus-circle-outline"/}} in der Kopfzeile der Liste (siehe Punkt 1 in der [[Abbildung>>||anchor="fig_data_source"]]). Daraufhin werden Sie aufgefordert eine leere Datenquelle anzulegen oder diese aus einer Datei zu importieren. Es können drei Typen von Datenquellen angelegt werden: //XML//, //CSV// und //JSON//.
9 +Hier nnen Sie Datensätze im CSV-Format eingeben.
13 13  
14 -{{lightbox image="data_source_new_de.png" title="Datenquellen können aus Dateien importiert oder neu angelegt werden"/}}
11 +* Wählen Sie unter //Typ// die Option //CSV//.
12 +* Vergeben Sie einen eindeutigen Namen.
13 +* Im Feld //Wert// geben Sie die Daten separiert mit einem Komma ein.
15 15  
16 -Jede Datenquelle benötigt:
17 -
18 -* einen eindeutigen Namen (im Einstellungspanel: siehe Punkt 3 in der [[Abbildung>>||anchor="fig_data_source"]])
19 -* die eigentlichen Daten im Editierbereich (siehe Punkt 2 in der [[Abbildung>>||anchor="fig_data_source"]])
20 -
21 -=== Importieren von Datenquellen aus Dateien ===
22 -
23 -Folgende Dateitypen können verwendet werden, um Datenquellen zu importieren:
24 -
25 -* **XML**: //.xml//
26 -* **CSV**: //.csv//, //.xls//, //.xlsx// (Excel)
27 -* **JSON**: //.json//
28 -
29 -{{id name="data_source_import_csv"/}}
30 -__CSV-Datenquellen__
31 -
32 -CSV-Datenquellen können aus unterschiedlichen Dateitypen importiert werden:
33 -
34 -* //.csv//
35 -Es öffnet sich ein Dialog zur Konfiguration des Imports:
36 -** **Trennzeichen**: Gibt an welches Trennzeichen in der Datei verwendet wird, um Datenfelder/Spalten voneinander zu trennen (typischerweise: Komma).
37 -** **Textqualifizierer**: Gibt an welches Feldbegrenzerzeichen in der Datei verwendet wird. Dieses Zeichen wird verwendet, um Sonderzeichen innerhalb der Datenfelder nutzen zu können (z. B. Komma in Dezimalzahlwerten).
38 -** **Beginnen ab Zeile**: Gibt an, ab welcher Zeile die CSV-Datei importiert werden soll.
39 -** **Leere Zeilen ignorieren**: Wenn aktiviert werden leere Zeilen beim Import ignoriert.
40 -
41 -{{lightbox image="data_source_import_csv_de.png" title="Importdialog für CSV-Dateien"/}}
42 -
43 -* //.xls//, //.xlsx//
44 -Es öffnet sich ein Dialog zur Konfiguration des Imports:
45 -** **Zu importierende Tabellen**: Gibt an welche Arbeitsblätter/Tabellen aus der Datei importiert werden sollen.
46 -
47 -{{lightbox image="data_source_import_excel_de.png" title="Importdialog für Excel-Dateien"/}}
48 -
49 -__Drag&Drop__
50 -
51 -Datenquellen können auch per Drag&Drop importiert werden. Wird eine Datei über die Liste (grüner Bereich gezogen), so wird eine neue Datenquelle vom entsprechenden Typ angelegt (bei Excel-Dateien wird eine Datenquelle pro Arbeitsblatt angelegt). Wird die Datenquelle allerdings über den Editierbereich einer bereits existierenden Datenquelle gezogen, so wird diese aktualisiert. Die Änderungen werden allerdings erst mit einem Klick auf "Speichern" {{icon name="save"/}} übernommen.
52 -
53 -== CSV ==
54 -
55 -{{figure image="data_source_csv_servlet_json_comparison.png"}}
56 -Die JSON-Struktur einer CSV-Datenquelle. Auf diese JSON-Struktur kann per Javaskcipt über {{code}}XFC_METADATA.urls.datasource_csv{{/code}} zugegriffen werden. (1) Links ist die JSON-Struktur der Datenquelle dargestellt, bei welcher die erste Zeile nicht als Header verwendet wird. Stattdessen werden Header in Form von {{code}}colX{{/code}} verwendet. (2) Rechts ist die Datenquelle zu sehen, wenn die erste Zeile als Header verwendet wird.
15 +{{figure image="datenquelle_csv_8.png" width="300"}}
16 +Die JSON-Struktur der CSV-Datenquelle. Auf diese JSON-Struktur kann dann per Javaskript über {{code}}XFC_METADATA.urls.datasource_[csv|json|xml]{{/code}} zugegriffen werden.
57 57  {{/figure}}
58 58  
59 -CSV-Datenquellen können in einer Quellcode-Ansicht oder in einer Tabellenansicht dargestellt werden. Die Ansicht kann mit einem Klick auf die entsprechende Schaltfläche {{ficon name="table-large"/}}/{{icon name="code"/}} in der Fußzeile unterhalb des Editierbereichs geändert werden.
19 +=== Beispiel r eine CSV-Datenquelle ===
60 60  
61 -//Quellcode-Ansicht einer CSV-Datenquelle//:
62 -{{lightbox image="data_source_csv_source.png" title="Quellcode-Ansicht einer CSV-Datenquelle"/}}
63 -//Tabellenansicht einer CSV-Datenquelle//:
64 -{{lightbox image="data_source_csv_table.png" title="Tabellenansicht einer CSV-Datenquelle"/}}
65 -
66 -=== Bearbeitung von CSV-Tabellen ===
67 -
68 -Zum Bearbeitung einer CSV-Tabelle befinden sich unterhalb des Editierbereichs eine Reihe von Schaltflächen:
69 -
70 -* {{ficon name="plus-circle"/}} **Einfügen**: Fügt neue Zeilen oder Spalten relativ zur derzeit selektierten Zelle ein.
71 -* {{ficon name="trash-alt2"/}} **Entfernen**: Entfernt die selektierte Zeile oder Spalte oder leert die selektierte Zelle.
72 -* {{icon name="upload"/}} **Importieren**: Öffnet den [[Dialog zum Importieren von CSV-Datenquellen>>||anchor="data_source_import_csv"]].
73 -* {{icon name="code"/}} **Quellcode-Ansicht**: Wechselt in die Quellcode-Ansicht.
74 -
75 -=== Header von CSV-Datenquellen ===
76 -
77 -Für CSV-Datenquellen gibt es eine zusätzliche Option in den Datenquelleinstellungen. Die Option **Erste Zeile ist Header** regelt den Zugriff auf die Werte der Datenquelle über das entsprechende Servlet ({{code}}XFC_METADATA.urls.datasource_csv{{/code}}):
78 -
79 -* **Aktiviert**:
80 -Die Zellen der erste Zeile werden als Schlüssel bzw. {{code}}keys{{/code}} für den Zugriff auf die Werte der jeweiligen Spalte verwendet (siehe [[Anwendungsbeispiel>>||anchor="data_source_csv_example"]]).
81 -* **Deaktiviert**:
82 -Die Schlüssel bzw. {{code}}keys{{/code}} für den Zugriff auf die Werte der einzelnen Datensätze/Zeilen sind durchnummeriert, beginnend mit {{code}}0{{/code}}. Diese Schlüssel haben folgende Form: {{code}}colX{{/code}}, wobei {{code}}X{{/code}} für den Index der Spalte steht.
83 -
84 -{{lightbox image="data_source_csv_settings_de.png" title="Die Option **Erste Zeile ist Header** regelt den Zugriff auf die Werte der Datenquelle über das entsprechende Servlet"/}}
85 -
86 -
87 87  {{info}}
88 88  Die CSV-Daten werden intern in ein JSON-Objekt umgewandelt, sodass die erste Zeile der //CSV-Datei// immer die Objektnamen für den späteren Zugriff definiert.
89 89  {{/info}}
90 90  
91 -CSV-Datenquellen können im {{designer case="dat"/}} über das //Servlet// mit Namen {{code}}XFC_METADATA.urls.datasource_csv{{/code}} ausgelsen werden.
25 +{{code}}
26 +Wert 1.1, Wert 1.2, Wert 1.3, Wert 1.4, ...
27 +{{/code}}
92 92  
29 +Das Auslesen der Werte im {{designer case="dat"/}} erfolgt über das //Servlet// mit Namen //datenquellecsv//.
30 +
93 93  === Servlet-Parameter ===
94 94  
95 95  {{info}}
... ... @@ -97,7 +97,7 @@
97 97  http(s):~/~/<server>/formcycle/datenquellecsv?mandantName=<Mandant-Name>&name=<Datenquellen-Name>
98 98  {{/info}}
99 99  
100 -Bei Zugriff aus dem {{designer case="dat"/}} verwenden Sie immer das globale Variablen-Objekt //XFC_METADATA//, siehe hierzu auch [[Globale Designer Variablen>>doc:Main.Formular-Metadaten]]. Beispielsweise kann wie folgt darauf zugegriffen werden: {{code}}XFC_METADATA.urls.datasource_csv{{/code}}.
38 +Bei Zugriff aus dem {{designer case="dat"/}} verwenden Sie immer das globale Variablen-Objekt //XFC_METADATA//, siehe hierzu auch [[Globale Designer Variablen>>doc:Formular-Metadaten]]. Beispielsweise kann wie folgt darauf zugegriffen werden: {{code}}XFC_METADATA.urls.datasource_csv{{/code}}.
101 101  
102 102  Folgende Parameter sind möglich:
103 103  
... ... @@ -110,8 +110,6 @@
110 110  |csvTrennzeichen|Gibt das Trennzeichen zwischen den einzelnen Datenzellen an. Wird dieses nicht gesetzt, wird hier standardmäßig ein Komma {{code}},{{/code}} benutzt.|Nein
111 111  |csvQuote|Das Trennzeichen, mit dem die Werte der Zeilen getrennt sind. Wird dieses nicht gesetzt, wird hier standardmäßig ein Anführungszeichen verwendet {{code}}"{{/code}}.| Nein
112 112  
113 -{{id name="data_source_csv_example"/}}
114 -
115 115  === Anwendungsbeispiel ===
116 116  
117 117  {{figure image="datenquelle_csv_7.png" width="300"}}
... ... @@ -129,7 +129,7 @@
129 129  
130 130  
131 131  
132 -Im {{designer case="dat"/}} wird dann folgendes Skript im [[Skriptbereich>>doc:Main.TAB - Script]] verwendet.
68 +Im {{designer case="dat"/}} wird dann folgendes Skript im [[Skriptbereich>>doc:TAB - Script]] verwendet.
133 133  
134 134  {{code language="javascript"}}
135 135  $.getJSON( XFC_METADATA.urls.datasource_csv + "?name=Demo&mandantName=xima.de", function(json) {
... ... @@ -149,13 +149,13 @@
149 149  
150 150  === Sonderfall Auswahlelement ===
151 151  
152 -{{figure image="data_source_csv_designer_de.png"}}
88 +{{figure image="datenquelle_csv_2.png" width="300"}}
153 153  Die Anbindung einer Datenquelle an eine Auswahlelement erfolgt direkt im {{designer case="dat"/}}
154 154  {{/figure}}
155 155  
156 -Soll die //CSV//-Datenquelle direkt in ein [[Auswahlelement>>doc:Main.Auswahl]] geladen werden, erfolgt dies über die Eigenschaften des Auswahlelements im {{designer case="dat"/}}.
92 +Soll die //CSV//-Datenquelle direkt in ein [[Auswahlelement>>doc:Auswahl]] geladen werden, erfolgt dies über die Eigenschaften des Auswahlelements im {{designer case="dat"/}}.
157 157  
158 -Der Inhalt der CSV-Datenquelle wird folgendermaßen in einem [[Auswahlelement>>doc:Main.Auswahl]] verarbeitet.
94 +Der Inhalt der CSV-Datenquelle wird folgendermaßen in einem [[Auswahlelement>>doc:Auswahl]] verarbeitet.
159 159  
160 160  {{code}}
161 161  sichtbarer wert, übertragener, wert, optionaler wert, optionaler wert, ...
... ... @@ -171,7 +171,7 @@
171 171  
172 172  == XML ==
173 173  
174 -Die XML Datenquelle verhält sich analog zur //CSV//-Datenquelle, kann jedoch nicht direkt an ein [[Auswahlelement>>doc:Main.Auswahl]] gebunden werden.
110 +Die XML Datenquelle verhält sich analog zur //CSV//-Datenquelle, kann jedoch nicht direkt an ein [[Auswahlelement>>doc:Auswahl]] gebunden werden.
175 175  
176 176  {{figure image="datenquelle_xml.png" width="300"}}
177 177  Die JSON-Struktur der XML-Datenquelle. Auf diese JSON-Struktur kann dann per Javaskript über {{code}}XFC_METADATA.urls.datasource_[csv|json|xml]{{/code}} zugegriffen werden.
... ... @@ -214,7 +214,7 @@
214 214  http(s):~/~/<server>/formcycle/datenquellexml?mandantName=<Mandant-Name>&name=<Datenquellen-Name>
215 215  {{/info}}
216 216  
217 -Bei Zugriff aus dem {{designer case="dat"/}} verwenden Sie immer das globale Variablen-Objekt //XFC_METADATA//, siehe hierzu auch [[Globale Designer Variablen>>doc:Main.Formular-Metadaten]]. Beispielsweise kann wie folgt darauf zugegriffen werden: {{code language="javascript"}}XFC_METADATA.urls.datasource_xml{{/code}}.
153 +Bei Zugriff aus dem {{designer case="dat"/}} verwenden Sie immer das globale Variablen-Objekt //XFC_METADATA//, siehe hierzu auch [[Globale Designer Variablen>>doc:Formular-Metadaten]]. Beispielsweise kann wie folgt darauf zugegriffen werden: {{code language="javascript"}}XFC_METADATA.urls.datasource_xml{{/code}}.
218 218  
219 219  Folgende Parameter sind möglich:
220 220  
... ... @@ -224,7 +224,7 @@
224 224  
225 225  == JSON ==
226 226  
227 -Die //JSON//-Datenquelle verhält sich analog zur //CSV//-Datenquelle, kann jedoch nicht direkt an ein [[Auswahlelement>>doc:Main.Auswahl]] gebunden werden.
163 +Die //JSON//-Datenquelle verhält sich analog zur //CSV//-Datenquelle, kann jedoch nicht direkt an ein [[Auswahlelement>>doc:Auswahl]] gebunden werden.
228 228  
229 229  {{figure image="datenquelle_json.png" width="300"}}
230 230  Die JSON-Struktur der JSON-Datenquelle. Sie ist identisch mit der JSON-Datenquelle. Auf diese JSON-Struktur kann dann per Javaskript über {{code}}XFC_METADATA.urls.datasource_[csv|json|xml]{{/code}} zugegriffen werden.
... ... @@ -254,7 +254,7 @@
254 254  http(s):~/~/<server>/formcycle/datenquellejson?mandantName=<Mandant-Name>&name=<Datenquellen-Name>
255 255  {{/info}}
256 256  
257 -Bei Zugriff aus dem {{designer case="dat"/}} verwenden Sie immer das globale Variablenobjekt //XFC_METADATA//, siehe hierzu auch [[Globale Designer Variablen>>doc:Main.Formular-Metadaten]]. Beispielweise kann wie folgt darauf zugegriffen werden: {{code language="javascript"}}XFC_METADATA.urls.datasource_json{{/code}}.
193 +Bei Zugriff aus dem {{designer case="dat"/}} verwenden Sie immer das globale Variablenobjekt //XFC_METADATA//, siehe hierzu auch [[Globale Designer Variablen>>doc:Formular-Metadaten]]. Beispielweise kann wie folgt darauf zugegriffen werden: {{code language="javascript"}}XFC_METADATA.urls.datasource_json{{/code}}.
258 258  
259 259  Folgende Parameter sind möglich:
260 260  
data_source_csv_designer_de.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -22.1 KB
Inhalt
data_source_csv_designer_en.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -21.4 KB
Inhalt
data_source_csv_servlet_json_comparison.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -23.8 KB
Inhalt
data_source_csv_settings_de.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -5.2 KB
Inhalt
data_source_csv_settings_en.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -4.9 KB
Inhalt
data_source_csv_source.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -4.0 KB
Inhalt
data_source_csv_table.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -13.8 KB
Inhalt
data_source_csv_table_w_header.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -14.1 KB
Inhalt
data_source_de.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -50.9 KB
Inhalt
data_source_en.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -48.9 KB
Inhalt
data_source_import_csv_de.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -19.1 KB
Inhalt
data_source_import_csv_en.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -15.6 KB
Inhalt
data_source_import_excel_de.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -10.4 KB
Inhalt
data_source_import_excel_en.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -9.2 KB
Inhalt
data_source_new_de.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -16.8 KB
Inhalt
data_source_new_en.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.nlo
Größe
... ... @@ -1,1 +1,0 @@
1 -14.1 KB
Inhalt
Copyright 2000-2024