... |
... |
@@ -7,6
+7,11 @@ |
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 |
+{{info}} |
|
11 |
+**Servlet-URL** |
|
12 |
+Die Servlet-URL einer Datenquelle wird nach dem Anlegen in der Konfigurationsoberfläche dargestellt (siehe Punkt 4 in der [[Abbildung>>||anchor="fig_data_source"]]) und ist im JS-Objekt {{code}}XFC_METADATA.urls.datasource_[csv|json|xml]{{/code}} verfügbar. |
|
13 |
+{{/info}} |
|
14 |
+ |
10 |
10 |
== Anlegen einer Datenquelle == |
11 |
11 |
|
12 |
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//. |
... |
... |
@@ -52,17
+52,19 @@ |
52 |
52 |
|
53 |
53 |
== CSV == |
54 |
54 |
|
55 |
|
-{{figure image="data_source_csv_servlet_json.png"}} |
56 |
|
-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. |
|
60 |
+{{figure image="data_source_csv_servlet_json_comparison.png"}} |
|
61 |
+Die JSON-Struktur einer CSV-Datenquelle. Auf diese JSON-Struktur kann per Javascript ü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. |
57 |
57 |
{{/figure}} |
58 |
58 |
|
59 |
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. |
60 |
60 |
|
61 |
|
-//Quellcode-Ansicht einer CSV-Datenquelle//: |
|
66 |
+//Quellcode-Ansicht einer CSV-Datenquelle//: ([[CSV Dateiformat>>https://de.wikipedia.org/wiki/CSV_(Dateiformat)||target="_blank"]]) |
62 |
62 |
{{lightbox image="data_source_csv_source.png" title="Quellcode-Ansicht einer CSV-Datenquelle"/}} |
63 |
63 |
//Tabellenansicht einer CSV-Datenquelle//: |
64 |
64 |
{{lightbox image="data_source_csv_table.png" title="Tabellenansicht einer CSV-Datenquelle"/}} |
65 |
65 |
|
|
71 |
+=== Bearbeitung von CSV-Tabellen === |
|
72 |
+ |
66 |
66 |
Zum Bearbeitung einer CSV-Tabelle befinden sich unterhalb des Editierbereichs eine Reihe von Schaltflächen: |
67 |
67 |
|
68 |
68 |
* {{ficon name="plus-circle"/}} **Einfügen**: Fügt neue Zeilen oder Spalten relativ zur derzeit selektierten Zelle ein. |
... |
... |
@@ -70,22
+70,18 @@ |
70 |
70 |
* {{icon name="upload"/}} **Importieren**: Öffnet den [[Dialog zum Importieren von CSV-Datenquellen>>||anchor="data_source_import_csv"]]. |
71 |
71 |
* {{icon name="code"/}} **Quellcode-Ansicht**: Wechselt in die Quellcode-Ansicht. |
72 |
72 |
|
73 |
|
-**Erste Zeile ist Header** |
|
80 |
+=== Header von CSV-Datenquellen === |
74 |
74 |
|
75 |
|
-=== Beispiel für eine CSV-Datenquelle === |
|
82 |
+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}}): |
76 |
76 |
|
77 |
|
-{{info}} |
78 |
|
-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. |
79 |
|
-{{/info}} |
|
84 |
+* **Aktiviert**: |
|
85 |
+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"]]). |
|
86 |
+* **Deaktiviert**: |
|
87 |
+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. |
80 |
80 |
|
81 |
|
-{{code}} |
82 |
|
-anrede,vorname,nachname,plz,ort |
83 |
|
-Herr,Max,Mustermann,1000,Musterhausen |
84 |
|
-Frau,Monika,Mustermann,2000,Musterdorf |
85 |
|
-Frau, Luise,Musterfrau,3000,Musterstadt |
86 |
|
-{{/code}} |
|
89 |
+{{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"/}} |
87 |
87 |
|
88 |
|
-Das Auslesen der Werte im {{designer case="dat"/}} erfolgt über das //Servlet// mit Namen //datenquellecsv//. |
|
91 |
+CSV-Datenquellen können im {{designer case="dat"/}} über das //Servlet// mit Namen {{code}}XFC_METADATA.urls.datasource_csv{{/code}} ausgelsen werden. |
89 |
89 |
|
90 |
90 |
=== Servlet-Parameter === |
91 |
91 |
|
... |
... |
@@ -107,12
+107,10 @@ |
107 |
107 |
|csvTrennzeichen|Gibt das Trennzeichen zwischen den einzelnen Datenzellen an. Wird dieses nicht gesetzt, wird hier standardmäßig ein Komma {{code}},{{/code}} benutzt.|Nein |
108 |
108 |
|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 |
109 |
109 |
|
|
113 |
+{{id name="data_source_csv_example"/}} |
|
114 |
+ |
110 |
110 |
=== Anwendungsbeispiel === |
111 |
111 |
|
112 |
|
-{{figure image="datenquelle_csv_7.png" width="300"}} |
113 |
|
-Ein Beispiel dafür, wie eine CSV-Datenquelle aussehen kann. Die Spalten werden durch Kommas getrennt. |
114 |
|
-{{/figure}} |
115 |
|
- |
116 |
116 |
{{code language="csv"}} |
117 |
117 |
anrede,vorname,nachname,plz,ort |
118 |
118 |
Herr,Max,Mustermann,1000,Musterhausen |
... |
... |
@@ -121,24
+121,21 @@ |
121 |
121 |
|
122 |
122 |
{{/code}} |
123 |
123 |
|
|
125 |
+Im {{designer case="dat"/}} wird dann folgendes Skript im [[Skriptbereich>>doc:Formcycle.FormDesigner.CodingPanel.WebHome]] verwendet. |
124 |
124 |
|
125 |
|
- |
126 |
|
- |
127 |
|
-Im {{designer case="dat"/}} wird dann folgendes Skript im [[Skriptbereich>>doc:Main.TAB - Script]] verwendet. |
128 |
|
- |
129 |
129 |
{{code language="javascript"}} |
130 |
130 |
$.getJSON( XFC_METADATA.urls.datasource_csv + "?name=Demo&mandantName=xima.de", function(json) { |
131 |
|
- var obj = json.returnValue[0] |
|
129 |
+ var obj = json.returnValue[0]; |
132 |
132 |
|
133 |
|
- $('[name=tfAnrede]').val(obj.anrede) |
134 |
|
- $('[name=tfVorname]').val(obj.vorname) |
135 |
|
- $('[name=tfName]').val(obj.nachname) |
136 |
|
- $('[name=tfPLZ]').val(obj.plz) |
137 |
|
- $('[name=tfOrt]').val(obj.ort) |
138 |
|
- }) |
|
131 |
+ $('[name=tfAnrede]').val(obj.anrede); |
|
132 |
+ $('[name=tfVorname]').val(obj.vorname); |
|
133 |
+ $('[name=tfName]').val(obj.nachname); |
|
134 |
+ $('[name=tfPLZ]').val(obj.plz); |
|
135 |
+ $('[name=tfOrt]').val(obj.ort); |
|
136 |
+ }); |
139 |
139 |
{{/code}} |
140 |
140 |
|
141 |
|
-{{lightbox image="datenquelle_csv_4.png" width="300"/}} |
|
139 |
+{{lightbox image="data_source_csv_designer_script_de.png"/}} |
142 |
142 |
|
143 |
143 |
Dieses Beispiel als Datenquelle für den {{designer case="acc"/}} [[zum Herunterladen>>attach:beispiel_datenquelle_csv.json||rel="__blank"]]. |
144 |
144 |
|