Wiki-Quellcode von CMS-Schnittstelle

Version 183.1 von MACH ProForms GmbH am 10.10.2024

Zeige letzte Bearbeiter
1 ## Voraussetzungen
2
3 Sie benötigen einen gültigen [[CMS-Key bzw. CMS-Schlüssel|doc:Main.01_Systemadministration.03_Installation.03_Abschliessend.02_Datenbank.01_CMS.WebHome]].
4 Sie benötigen einen gültigen [[CMS-Key|doc:Main.01_Systemadministration.03_Installation.03_Abschliessend.02_Datenbank.01_CMS.WebHome]].
5
6 ## Mehrwert technischer Kooperation
7
8 Durch die Implementierung einer Schnittstelle zwischen einem CMS, DMS, Fachverfahren etc. (nachfolgend Partnersystem genannt) und dem Formular-Server kann je nach Ausgestaltung ein erheblicher Mehrwert für gemeinsame Kunden erreicht werden. Eine technische Kooperation zwischen den Systemen ist dabei nicht nur ein weiteres Produkt, das den bestehenden Kunden als ein nützliches Add-On angeboten werden kann. Insbesondere im kommunalen Markt gewinnt Interoperabilität von IuK-Systemen (Informations- und Kommunikations-Systemen) rasant an Bedeutung und wird somit für alle Anbieter zu einem zentralen Vertriebsargument für ihr Basisprodukt.
9
10 Nachfolgend werden einige Implementierungsvarianten der Schnittstelle beschrieben, die mit einem relativ überschaubaren Aufwand umgesetzt werden können:
11
12 ### Redundanzfreie Benutzerverwaltung
13
14 Durch die Verbindung des Partnersystems mit MACH formsolutions kann die Benutzerverwaltung für beide Systeme einheitlich aus der Oberfläche des Partnersystems erfolgen. Die doppelte Erfassung und Pflege der Benutzer entfällt somit künftig für den Kunden, wodurch sowohl der administrative Aufwand, wie auch das Risiko von Fehleingaben halbiert werden.
15
16 Bei personell stets sparsam ausgestatteten IT-Abteilungen der öffentlichen Hand bedeutet die Aufhebung der Benutzerverwaltungsredundanz einen spürbaren monetären Nutzen, der bei der Auswahl von Software entscheidend sein kann.
17
18 ### Single Sign On
19
20 Mitarbeiter der Kunden beider Systeme sind mit dem Einsatz der Schnittstelle nicht mehr gezwungen sich mehrfach in jedem System separat zu authentifizieren. Mit der einmaligen Passworteingabe beim Partnersystem erfolgt der Login beim Formularserver vollautomatisch. Mit der einfacheren, hindernisfreien Nutzung und der Zeitersparnis für alle Nutzer erhöht das Single Sign On die Effizienz beider Programme. Ferner führt der Wegfall des Umgangs mit mehreren Passwörtern für jeden Nutzer zur Reduzierung des Administrationsaufwands und zur Erhöhung der Sicherheit, da die Passwörter zur Gedächtnisstütze nicht mehr schriftlich notiert werden müssen.
21
22 ### Vorausgefüllte Formulare im Intranet-Bereich
23
24 Im Bereich des Intranets besteht der Vorteil, dass i.d.R. die gesamte Nutzergruppe und damit alle Absender und Empfänger von Formularen bekannt sind. Die im Partnersystem gespeicherten Personaldaten können ausgelesen und zur Vorbefüllung von Formularen verwendet werden. Je nach Geschäftsvorfall wird damit ein Großteil der Formularfelder automatisch ausgefüllt, wodurch die Fehlerquote und der Aufwand bei der manuellen Formularbefüllung auf ein Minimum reduziert und die gesamte Durchlaufzeit von internen Prozessen deutlich beschleunigt werden kann.
25
26 ### Parametrisierungsdynamik
27
28 In bestimmten Lebenslagen muss der Bürger mehrfach in Interaktion zu seiner Gemeinde treten und damit i.d.R. gleichzeitig oder in einem kurzen Zeitraum eine Vielzahl von Formularen ausfüllen.
29
30 **Beispiel: Lebenslage Wohnungswechsel/Umzug**
31
32 Bei einem Umzug muss eine Familie bei der Gemeinde ihren Wohnsitz, ihre Kinder bei der Musikschule und / oder im Kindergarten, ihren Hund bei der Steuerbehörde, Strom, Wasser und Müll bei den Stadtwerken usw. anmelden.
33
34 Diese Liste kann beliebig weitergeführt werden. In dem genannten Beispiel muss die Familie mindestens sieben Formulare ausfüllen. Dabei ist ein Großteil der notwendigen Daten identisch und muss trotzdem wiederholt händisch eingeben werden. Stattdessen kann mit Einverständnis des Bürgers ein Teil der notwendigen Daten zentral zwischengespeichert werden. Mit diesen Daten können die weiteren formulargestützten Interaktionen des Bürgers mit der Gemeinde automatisch vorparametrisiert werden. Der Bürger kann damit in einem viel schnelleren und einfacheren Rahmen seine Anträge vervollständigen und an die Gemeinde weiterleiten. Dies führt mittelfristig zu einer höheren Akzeptanz beim Bürger. Für den Sachbearbeiter bedeutet eine automatische Parametrisierung der Formulare vollständigere und fehlerreduzierte Anträge. Die Bearbeitungszeit für Prüfung, Vervollständigung und Anordnung der Wiedervorlage kann verkürzt werden, was wiederum zu kürzeren Durchlaufzeiten und damit zu höherer Verwaltungseffizienz, sowie besserer Bürgerzufriedenheit beiträgt.
35
36 ### Systemintegration und Mehrwertkonzentration
37
38 Aus dem Partnersystem-Bereich können Kunden direkt die wichtigsten Komponenten des Formular-Servers ansprechen, bedienen und konfigurieren und damit aus einer Umgebung heraus ohne jegliche Umstellung den Mehrwert beider Systeme vereinen. Trotz plattformübergreifender Funktionalität befindet sich der Nutzer auf einer einheitlichen Oberfläche und braucht bei der täglichen Arbeit nicht ständig zwischen einer Vielzahl von Userinterfaces zu wechseln.
39
40 Unter anderem können die folgenden Komponenten aus dem Partnersystem angesteuert werden:
41
42 #### Formular-Recherche
43
44 Der Formular-Server enthält ein umfassendes Recherche-System für Schlagwörter, Namen, Formularnummern und Volltext. Zusätzlich wird die Suche durch standardmäßige Klassifizierung der Formulare in u.a. Kategorie, Dateityp und Datum weiter präzisiert. Weiterhin kann zwischen Verlagsformularen und kundenspezifischen Formularen unterschieden werden.
45
46 #### Formularkonfiguration
47
48 Vor der Veröffentlichung eines bestimmten Formulars können im Formular-Server zunächst die Eigenschaften und die Funktionalität desselben festgelegt werden. Durch die Definition der einzelnen Parameter wird bei der Veröffentlichung des Formulars je nach Einstellung der spezifische Link generiert. Hierzu gehört die Festlegung der:
49
50 * zu verwendeten Schaltflächen und damit die durch den Bürger ansprechbaren Funktionalitäten (z.B. Formular online senden, digital signieren etc.)
51 * Formularsicherheit, zu der die Dokumentenverschlüsselung und die Dokumenteneinschränkung zählen (z.B. Drucken nicht zulässig)
52 * Benachrichtigungsoptionen
53 Diese dienen zur Festlegung der E-Mail-Adressen, die beim elektronischen Versand von Formularen benachrichtigt werden.
54 * eCash Optionen
55 Soweit bei den Schaltflächen „Senden mit eCash“ ausgewählt wurde, können bei den eCash Optionen der einzuziehende Betrag und interne Vermerke definiert werden. Bei der Bezahlung mit eCash kann gleichzeitig ein Genehmigungsprozess angestoßen werden.
56 * S-Internetkassen Optionen
57 Ebenfalls für die Bezahlung von Verwaltungsdienstleitungen kann die S-Internetkasse verwendet werden. Diese Bezahllösung beinhaltet die Möglichkeit zwischen drei Bezahlvarianten zu wählen: Bankeinzug, Kreditkarte und Giropay. Dabei kann die Kommune im Vorfeld bestimmen, welche Bezahlvarianten für den Bürger zur Verfügung stehen.
58
59 #### Formulare hochladen
60
61 Die Funktion „Formulare hochladen“ dient zur Übertragung lokal gespeicherter und selbsterstellter Formulare der Kunden auf den Formularserver. Vor dem Hochladevorgang müssen dabei zusätzlich einige Metadaten zum Dokument wie Formularname, Nummer, Kategorie usw. eingegeben werden.
62
63 #### Standard Login
64
65 Trotz umfangreicher Komponenten, die unmittelbar aus der Oberfläche des Partnersystems angesprochen werden können, wäre die Übernahme der kompletten Formularserver Funktionalität zu aufwendig. Hierfür bietet es sich an, einen direkten Login zum Formularserver via Jumplink zu implementieren. Der Benutzer kann sich dabei über die Betätigung eines Buttons im Partnersystem direkt in seinem Account auf dem Formularserver einloggen und im Bedarfsfall so zwischen den Applikationen wechseln.
66
67 ---
68
69 ## Technische Schnittstellendokumentation
70
71 ### Server2Server Schnittstellen
72
73 Server2Server Schnittstellen sind Schnittstellen zur direkten Kommunikation zwischen zwei Servern, um Benutzer- und Laufdaten auf beiden Servern synchron zu halten.
74
75 #### Webservices
76
77 Webservices sind serverseitige Dienste die Daten zwischen zwei Servern mittels des SOAP-Protokolls austauschen. SOAP ist eine abwärtskompatible Weiterentwicklung von XML. Webservice-Klassen sind in die meisten Web-Sprachen eingebettet oder für diese verfügbar. Für PHP empfehlen wir die NuSOAP Klasse, die dieser Dokumentation beigefügt ist. Mit .NET+ besteht eine Inkompatibilität in der Interpretation der HTTP1.1 Referenz, **mit .NET+ bitte HTTP1.0 verwenden.**
78
79 ![[Abbildung 1: Webservice- Schnittstelle|@ws-diagram.jpg]]
80
81 #### Interaktive Schnittstelle
82
83 Interaktive Schnittstellen wurden für Bereiche entwickelt, in denen häufige Änderungen von uns vorgenommen werden und die einer laufenden Nachbesserung bedürfen. Hierzu wird (in einem neuen Fenster) eine Webseite vom MACH ProForms aufgerufen, die nach Ablauf des Dialogs Daten an eine angegebene Webseite übergibt oder, wenn es keiner Datenübergabe bedarf, vom Benutzer geschlossen werden kann.
84
85 ![[Abbildung 2: Interaktive Schnittstelle|@ws-interactive-diagram.jpg]]
86
87 ---
88
89 ## Funktionen der Server2Server Schnittstellen
90
91 ### getuser
92
93 getuser liefert die Daten eines Benutzers in einem Array.
94
95 #### Webservice-URL:
96
97 <https://pdf.form-solutions.net/ws2/getuser.php>
98
99 #### Datenstruktur
100
101 ##### Geforderte Daten
102
103 * **cms**
104 `varchar(32)`
105 CMS-Key des Kunden
106 * **User**
107 `varchar (18)`
108 Benutzernummer des Benutzers, dessen Daten vom System zurückgegeben werden.
109
110 ##### Zurückgegebene Daten
111
112 * **Benutzer**
113 `varchar(18)`
114 Benutzernummer
115 * **ofsXX1_knr_std**
116 `varchar(13)`
117 Kundennummer
118 * **sysmail**
119 `varchar(59)`
120 E-Mail-Adresse des Benutzers, an die Systembenachrichtigungen der Kundenbereich-Oberfläche (Passwort zurücksetzten etc.) geschickt werden.
121 * **nick**
122 `varchar(50)`
123 alternativer Benutzername
124 * **b12c96nfBehoerde_Amt**
125 `varchar(255)`
126 Amt des Benutzers, z.B. Medienbüro, Finanzamt
127 * **b12c96nfBehoerde_Sachbearbeiter_Name**
128 `varchar(50)`
129 Name des Sachbearbeiters
130 * **b12c96nfBehoerde_Strasse**
131 `varchar(150)`
132 Straßenname der Behördenanschrift
133 * **ofsXX1_from_smail3**
134 `varchar(150)`
135 E-Mail-Adresse, die als Versender von Formulardaten angezeigt wird.
136 * **ofsXX1_to_smail3**
137 `varchar(150)`
138 E-Mail-Adresse an die Formulardaten gesendet werden.
139 * **b12c96nfBehoerde1**
140 `text`
141 Behördenname
142 z.B. Stadtverwaltung Karlsruhe
143 * **b12c96nfBehoerde1Anschrift**
144 `text`
145 Anschrift der Behörde einzeilig
146 * **b12c96nmBehoerde**
147 `text`
148 Anschrift der Behörde dreizeilig
149 Zeilenumbruch: `\<br\>`
150 * **b12c96nmEmpfaenger**
151 `text`
152 Anschrift der Behörde sechszeilig
153 Zeilenumbruch: `\<br\>`
154 * **b12c96nfBehoerde_PLZ_Ort**
155 `varchar(50)`
156 PLZ, Ort der Behördenanschrift z.B. 75217 Birkenfeld
157 * **b12c96nfBehoerde_Sachbearbeiter_Name**
158 `varchar(50)`
159 Name des Sachbearbeiters
160 * **b12c96nfSachbearbeiter_Zimmernummer**
161 `varchar(20)`
162 Zimmernummer des Sachbearbeiters
163 * **b12c96nfSachbearbeiter_Telefon**
164 `varchar(30)`
165 Telefonnummer des Sachbearbeiters (mit Vorwahl)
166 * **b12c96nfSachbearbeiter_Telefax**
167 `varchar(30)`
168 Faxnummer des Sachbearbeiters (ohne Vorwahl)
169 * **b12c96nfSachbearbeiter_E_Mail**
170 `varchar(30)`
171 E-Mail-Adresse des Sachbearbeiters, die im Formular angezeigt werden soll.
172 * **b12c96nfGemeindekennzahl**
173 `varchar(8)`
174 Gemeindekennzahl der Behörde (im Regelfall die ersten 8 Stellen der Kundennummer)
175 * **b12c96nfOrt_Datum**
176 `varchar(50)`
177 Ort, Datumszeile im Formular z.B. Birkenfeld, den
178 * **b12c96nmOrt_Datum2**
179 `text`
180 Ort, Datumszeile zweizeilig im Formular
181 z.B. Birkenfeld, `\<br\>`
182 den
183 * **b12c96nfAntragsteller_PLZ**
184 `varchar(10)`
185 Vollständige oder teilweise Postleitzahl des Antragstellers
186 * **b12c96nfBehoerde_PLZ_Post**
187 `varchar(7)`
188 Postleitzahl der Behördenanschrift
189 * **b12c96nfAntragsteller_Ort**
190 `varchar(30)`
191 Ortsname des Antragstellers
192 * **b12c96nfAktenzeichen**
193 `varchar(30)`
194 Aktenzeichen des Formularvorgangs
195 * **b12c96nfKontakt1Z**
196 `varchar(250)`
197 Einzeilige Kontaktnachricht auf dem Kopf des Formulars, wird meist mit Öffnungszeiten und anderen Informationen gefüllt
198 * **b12c96nmRechtsbehelfsbelehrung**
199 `text`
200 Rechtsbehelfsbelehrung, die ins Formular eingefügt wird
201 * **b12c96nfSachbearbeiter_Personalnummer**
202 `varchar(50)`
203 Personalnummer des Sachbearbeiters
204 * **b12c96nfBehoerde_Ort**
205 `varchar(255)`
206 Ortsname der Behördenanschrift
207 * **ec_sel**
208 `int(0,1)`
209 Der Benutzer hat das Recht eCash Formulare zu generieren.
210 * **ec_stat**
211 `int(0,1)`
212 Der Benutzer hat das Recht sich eCash Statistiken anzusehen.
213 * **barcode_sel**
214 `int(0,1)`
215 Der Benutzer hat das Recht 2D-Barcode Formulare zu erstellen.
216 * **usr_anl**
217 `int(0,1)`
218 Der Benutzer hat das Recht weitere Benutzer im System anzulegen.
219 * **usr_shw**
220 `int(0,1)`
221 Der Benutzer hat das Recht andere Benutzer zu verwalten.
222 * **usr_chg**
223 `int(0,1)`
224 Der Benutzer hat das Recht die Personalisierungsdatensätze anderer Benutzer zu ändern.
225 * **usr_login**
226 `int(0,1)`
227 Der Benutzer hat das Recht sich als ein anderer Benutzer einzuloggen (dies wird meist zum debuggen benutzt).
228 * **usr_del**
229 `int(0,1)`
230 Der Benutzer hat das Recht andere Benutzerdatensätze im System zu löschen.
231 * **give_right**
232 `int(0,1)`
233 Der Benutzer hat das Recht seine eigenen Rechte an andere Benutzer weiterzugeben.
234 * **ch_pers**
235 `int(0,1)`
236 Der Benutzer hat das Recht seinen eigenen Personalisierungsdatensatz zu ändern.
237 * **preset**
238 `int(0,1)`
239 Der Benutzer hat das Recht Passwörter anderer Benutzer zurückzusetzen.
240 * **form_sel**
241 `int (0,1)`
242 Der Benutzer hat das Recht Formulare für alle Benutzer ein- oder auszublenden.
243 * **form_deliver**
244 `int(0,1)`
245 Der Benutzer hat das Recht selbst erstellte Formulare hochzuladen.
246 * **form_del**
247 `int(0,1)`
248 Der Benutzer hat das Recht selbst erstellte Formulare aller Benutzer zu löschen.
249 * **form_def_set**
250 `int(0,1)`
251 Der Benutzer hat das Recht Formulardefinitionen vorzugeben.
252 * **logo**
253 `int(0,1)`
254 Der Benutzer hat das Recht ein neues Logo hochzuladen.
255 * **Exp_ben**
256 `int(0,1)`
257 Der Benutzer hat das Recht sich die angezeigten Benutzerdaten als CSV-, XLS-, XML-Datei herunterzuladen.
258 * **Exp_form**
259 `int(0,1)`
260 Der Benutzer hat das Recht sich eine Liste gesuchter Formulare als CSV-, XLS-, XML-Datei herunterzuladen.
261 * **data**
262 `int(0,1)`
263 Der Benutzer hat das Recht eingegangene Formulardaten als CSV-, XLS-, XML-Datei zu exportieren.
264 * **data_exp**
265 `int(0,1)`
266 Dieses Recht beschreibt, dass der Benutzer nur bestimmte Formulare exportieren darf.
267 * **archive**
268 `int(0,1)`
269 Der Benutzer hat das Recht eingegangene Formulardaten als CSV-, XLS-, XML-Datei zu archivieren.
270 * **archive_exp**
271 `int(0,1)`
272 Dieses Recht beschreibt, dass der Benutzer nur bestimmte Formulare archivieren darf.
273 * **Shw_admin**
274 `int(0,1)`
275 Der Benutzer hat das Recht den Administrator Datensatz (-0000) zu sehen und zu verändern.
276
277 ### getusers
278
279 Auf Anfrage erzeugt getusers ein zweidimensionales Array mit den Daten aller Benutzer eines CMS-Keys.
280
281 #### Webservice-URL:
282
283 <https://pdf.form-solutions.net/ws2/getusers.php>
284
285 #### Datenstruktur
286
287 ##### Geforderte Daten
288
289 * **cms**
290 `varchar(32)`
291 CMS-Key des Kunden
292
293 ##### Zurückgegebene Daten
294
295 Als Ergebnis erhält man ein Array mit Benutzerobjekten. Die einzelnen Objekte entsprechen der Struktur wie unter getuser beschrieben.
296
297 ### putuser (geänderte Daten)
298
299 Putuser legt einen Benutzer in der Datenbank an oder editiert einen vorhandenen Benutzer. Hier kann die Variable „Benutzer“ zwei Zustände haben:
300
301 1. eine vorhandene Benutzernummer -> Das System überschreibt die Daten des Benutzers mit den übergebenen Daten.
302 1. eine noch nicht vorhandene Benutzernummer -> Das System legt einen Benutzer mit dieser Benutzernummer an. Soll die Benutzernummer durch das System bestimmt werden, so muss das Schlüsselwort „new“ angegeben werden. Das System nimmt die nächste Benutzernummer und liefert diese zurück.
303
304 #### Webservice-URL:
305
306 <https://pdf.form-solutions.net/ws2/putuser.php>
307
308 #### Datenstruktur
309
310 ##### Geforderte Daten
311
312 * **Benutzer**
313 `varchar(18)`
314 Benutzernummer
315 * **sysmail**
316 `varchar(59)`
317 E-Mail-Adresse des Benutzers, an die Systembenachrichtigungen der Kundenbereich-Oberfläche (Passwort zurücksetzten etc.) geschickt werden.
318 * **nick**
319 `varchar(50)`
320 alternativer Benutzername
321 * **b12c96nfBehoerde_Amt**
322 `varchar(255)`
323 Amt des Benutzers z.B. Medienbüro, Finanzamt
324 * **b12c96nfBehoerde_Strasse**
325 `varchar(150)`
326 Straßenname der Behördenanschrift
327 * **ofsXX1_from_smail3**
328 `varchar(150)`
329 E-Mail-Adresse, die als Versender von Formulardaten angezeigt wird.
330 * **ofsXX1_to_smail3**
331 `varchar(150)`
332 E-Mail-Adresse an die Formulardaten gesendet werden.
333 * **b12c96nfBehoerde1**
334 `text`
335 Behördenname z.B. Stadtverwaltung Karlsruhe
336 * **b12c96nfBehoerde1Anschrift**
337 `text`
338 Anschrift der Behörde einzeilig
339 * **b12c96nmBehoerde**
340 `text`
341 Anschrift der Behörde dreizeilig
342 Zeilenumbruch: `\<br\>`
343 * **b12c96nmEmpfaenger**
344 `text`
345 Anschrift der Behörde sechszeilig
346 Zeilenumbruch: `\<br\>`
347 * **b12c96nfBehoerde_PLZ_Ort**
348 `varchar(50)`
349 PLZ, Ort der Behördenanschrift, z.B. 75217 Birkenfeld
350 * **b12c96nfBehoerde_Sachbearbeiter_Name**
351 `varchar(50)`
352 Name des Sachbearbeiters
353 * **b12c96nfSachbearbeiter_Zimmernummer**
354 `varchar(20)`
355 Zimmernummer des Sachbearbeiters
356 * **b12c96nfSachbearbeiter_Telefon**
357 `varchar(30)`
358 Telefonnummer des Sachbearbeiters (mit Vorwahl)
359 * **b12c96nfSachbearbeiter_Telefax**
360 `varchar(30)`
361 Faxnummer des Sachbearbeiters (ohne Vorwahl)
362 * **b12c96nfSachbearbeiter_E_Mail**
363 `varchar(30)`
364 E-Mail-Adresse des Sachbearbeiters, die im Formular angezeigt werden soll.
365 * **b12c96nfGemeindekennzahl**
366 `varchar(8)`
367 Gemeindekennzahl der Behörde (im Regelfall die ersten 8 Stellen der Kundennummer).
368 * **b12c96nfOrt_Datum**
369 `varchar(50)`
370 Ort, Datumszeile im Formular z.B. Birkenfeld, den
371 * **b12c96nmOrt_Datum2**
372 `text`
373 Ort, Datumszeile zweizeilig im Formular
374 z.B. Birkenfeld, `\<br\>`
375 den
376 * **b12c96nfAntragsteller_PLZ**
377 `varchar(10)`
378 Vollständige oder teilweise Postleitzahl des Antragstellers.
379 * **b12c96nfBehoerde_PLZ_Post**
380 `varchar(7)`
381 Postleitzahl der Behördenanschrift
382 * **b12c96nfAntragsteller_Ort**
383 `varchar(30)`
384 Ortsname des Antragstellers
385 * **b12c96nfAktenzeichen**
386 `varchar(30)`
387 Aktenzeichen des Formularvorgangs
388 * **b12c96nfKontakt1Z**
389 `varchar(250)`
390 Einzeilige Kontaktnachricht auf dem Kopf des Formulars, wird meist mit Öffnungszeiten und anderen Informationen gefüllt.
391 * **b12c96nmRechtsbehelfsbelehrung**
392 `text`
393 Rechtsbehelfsbelehrung, die ins Formular eingefügt wird.
394 * **b12c96nfSachbearbeiter_Personalnummer**
395 `varchar(50)`
396 Personalnummer des Sachbearbeiters
397 * **b12c96nfBehoerde_Ort**
398 `varchar(255)`
399 Ortsname der Behördenanschrift
400 * **ec_sel**
401 `int(0,1)`
402 Der Benutzer hat das Recht eCash Formulare zu generieren.
403 * **ec_stat**
404 `int(0,1)`
405 Der Benutzer hat das Recht sich eCash Statistiken anzusehen.
406 * **barcode_sel**
407 `int(0,1)`
408 Der Benutzer hat das Recht 2D-Barcode Formulare zu erstellen.
409 * **usr_anl**
410 `int(0,1)`
411 Der Benutzer hat das Recht weitere Benutzer im System anzulegen.
412 * **usr_shw**
413 `int(0,1)`
414 Der Benutzer hat das Recht andere Benutzer zu verwalten.
415 * **usr_chg**
416 `int(0,1)`
417 Der Benutzer hat das Recht die Personalisierungsdatensätze anderer Benutzer zu ändern.
418 * **usr_login**
419 `int(0,1)`
420 Der Benutzer hat das Recht sich als ein anderer Benutzer einzuloggen (dies wird meist zum debuggen benutzt).
421 * **usr_del**
422 `int(0,1)`
423 Der Benutzer hat das Recht andere Benutzerdatensätze im System zu löschen.
424 * **give_right**
425 `int(0,1)`
426 Der Benutzer hat das Recht seine eigenen Rechte an andere Benutzer weiterzugeben.
427 * **ch_pers**
428 `int(0,1)`
429 Der Benutzer hat das Recht seinen eigenen Personalisierungsdatensatz zu ändern.
430 * **preset**
431 `int(0,1)`
432 Der Benutzer hat das Recht Passwörter anderer Benutzer zurückzusetzen.
433 * **form_sel**
434 `int(0,1)`
435 Der Benutzer hat das Recht Formulare für alle Benutzer ein oder auszublenden.
436 * **form_deliver**
437 `int(0,1)`
438 Der Benutzer hat das Recht selbst erstellte Formulare hochzuladen.
439 * **form_del**
440 `int(0,1)`
441 Der Benutzer hat das Recht selbst erstellte Formulare aller Benutzer zu löschen.
442 * **form_def_set**
443 `int(0,1)`
444 Der Benutzer hat das Recht Formulardefinitionen vorzugeben.
445 * **logo**
446 `int(0,1)`
447 Der Benutzer hat das Recht ein neues Logo hochzuladen.
448 * **exp_ben**
449 `int(0,1)`
450 Der Benutzer hat das Recht sich die angezeigten Benutzerdaten als CSV-, XLS-, XML-Datei herunterzuladen.
451 * **exp_form**
452 `int(0,1)`
453 Der Benutzer hat das Recht sich eine Liste gesuchter Formulare als CSV-, XLS-, XML-Datei herunterzuladen.
454 * **data**
455 `int(0,1)`
456 Der Benutzer hat das Recht eingegangene Formulardaten als XLS, CSV, XML Datei zu exportieren.
457 * **data_exp**
458 `int(0,1)`
459 Dieses Rechts beschreibt, dass der Benutzer nur bestimmte Formulare exportieren darf.
460 * **archive**
461 `int(0,1)`
462 Der Benutzer hat das Recht eingegangene Formulardaten als XLS, CSV, XML Datei zu archivieren.
463 * **archive_exp**
464 `int(0,1)`
465 Dieses Rechts beschreibt, dass der Benutzer eingegangene Formulardaten nur von bestimmten Formularen archivieren darf.
466 * **shw_admin**
467 `int(0,1)`
468 Der Benutzer hat das Recht den Administrator-Datensatz (-0000) zu sehen und zu verändern.
469
470 ##### 3.3.2.2 Zurückgegebene Daten
471
472 * **Status**
473 `String`
474 * **Benutzer**
475 `varchar(18)`
476 * **password**
477 `varchar(50)`
478
479 ##### Besonderheiten
480
481 Die CMS-Schnittstelle ist nicht dazu in der Lage, Benutzer mit Benutzerrollen anzulegen oder zu verwalten, da nicht alle Rechte vergeben werden können. Daher sind alle CMS-Schnittstellen Benutzerdatensätze mit Einzelrechten ausgestattet.
482
483 Weiterhin ist zu beachten, dass die Rechte `data_exp` und `archive_exp` einschränkende Rechte sind. Diese Rechte sind mit der neuen Sortimentsverwaltung obsolet geworden. Wenn die Benutzerrechte `Transaktionsdaten Archivieren` und `Transaktionsdaten exportieren` gesetzt werden sollen, müssen `archive` und `data` gesetzt sein, und die rechte `archive_exp` und `data_exp` dürfen nicht gesetzt sein.
484
485 ### deluser
486
487 Deluser löscht einen spezifischen Benutzer aus der Datenbank.
488
489 #### Webservice-URL:
490
491 <https://pdf.form-solutions.net/ws2/deluser.php>
492
493 #### Datenstruktur
494
495 ##### Geforderte Daten
496
497 * **cms**
498 `varchar(32)`
499 CMS-Key des Kunden
500 * **user**
501 `varchar(18)`
502 Benutzernummer des Benutzers, dessen Daten vom System gelöscht werden sollen.
503
504 ##### Zurückgegebene Daten
505
506 * **Status**
507 `String`
508
509 ### getticket
510
511 Auf Anfrage generiert getticket ein einmaliges Ticket, das zur Authentifizierung der interaktiven Schnittstellen gedacht ist.
512
513 #### Webservice-URL:
514
515 <https://pdf.form-solutions.net/ws2/getticket.php>
516
517 #### Datenstruktur
518
519 ##### Geforderte Daten
520
521 * **cms**
522 `varchar(32)`
523 CMS-Key des Kunden
524
525 ##### Zurückgegebene Daten
526
527 * **ticket**
528 varchar(64)`
529 Einmalticket, das zum Aufruf eines Prozesses bei interaktiven Schnittstellen eingesetzt wird.
530
531 ### getformlist
532
533 Auf Anfrage generiert getformlist ein Datenarray aller Formulare, welche der durch den CMS-Key authentifizierte Kunde nutzen kann.
534
535 > _**Hinweis:**_
536 >
537 > Diese Funktion liefert keine Daten über Assistenten mit.
538
539 #### Webservice-URL:
540
541 <https://pdf.form-solutions.net/ws2/getformlist.php>
542
543 #### Datenstruktur
544
545 ##### Geforderte Daten
546
547 * **cms**
548 `varchar(32)`
549 CMS-Key des Kunden
550
551 #### Zurückgegebene Daten
552
553 Es wird ein Array mit Formulardaten zurückgeliefert. Jedes Element enthält dabei folgende Daten:
554
555 * **fnr**
556 `varchar(250)`
557 Formularnummer
558 * **title**
559 `varchar(250)`
560 Formularname
561 * **kat**
562 `varchar(250)`
563 Formularkategorie
564 * **pagecount**
565 `int(10)`
566 Anzahl der Formularseiten
567 * **created**
568 `date(Y-M-D)`
569 Erstellungsdatum
570 * **changed**
571 `date(Y-M-D)`
572 Datum der letzten Änderung
573 * **bem**
574 `text`
575 Bemerkungen zum Formular
576 * **beschr**
577 `text`
578 Beschreibung des Formulars
579 * **formtype** `varchar(3)`
580 Die Software unterscheidet zwischen 2 Formulartypen.
581 fs = ein von MACH ProForms erstelltes Formular
582 knd = ein vom Kunden erstelltes Formular
583
584 ---
585
586 ## Funktionen der Interaktiven Schnittstellen
587
588 ### Sign-In
589
590 Mit dieser Funktion können Sie einen Benutzer ohne weitere Login-Abfragen im System einloggen.
591
592 #### URL:
593
594 <https://pdf.form-solutions.net/ticket-in.php>
595
596 #### Übergabeparameter:
597
598 * **Usr**
599 Benutzernummer des Benutzers im FS-System
600 * **ticket**
601 Ticketnummer, die zuvor per Webservice angefordert wurde
602 * **type**
603 signin`
604
605 ### Formular suchen und Formular-Link erstellen
606
607 Diese Funktion öffnet einen Suchdialog, in dem der Benutzer ein Formular suchen und konfigurieren kann. Nach Abschluss dieser Funktion wird die generierte URL an eine übergebene Ziel-URL weitergereicht.
608
609 #### URL:
610
611 <https://pdf.form-solutions.net/ticket-in.php>
612
613 #### Übergabeparameter:
614
615 * **usr**
616 Benutzernummer des Benutzers im FS-System
617 * **ticket**
618 Ticketnummer, die zuvor per Webservice angefordert wurde
619 * **type**
620 `formsearch`
621 * **return**
622 URL, an die der erstellte Formular-Link übergeben werden soll. Diese URL muss so aussehen, dass am Ende der URL der Formular-Link angefügt werden kann. Bsp: <https://pdf.form-solutions.net//ws/back.php?data=>
623 Des Weiteren muss der übergebene Link urlencoded gesendet werden. In dem übergebenen Link wird zusätzlich urlencoded mit dem Parameter `title` der Titel des Formulars und mit dem Parameter `id` die Formularnummer mitgegeben.
624
625 > _**Hinweis:**_
626 >
627 > In der Variante mit dem type formsearch kann man ab der Release-Version 32.13.0 auch Assistenten suchen. Die Überarbeitung von Assistenten-Links erfolgt ebenso über diese Variante.
628
629 ### Basisformular-Link erstellen
630
631 Die Funktion `getbaselink` übergibt einen sicheren Link zu einem Formular ohne weitere Funktionen wie Senden, Barcode, S-Internetkasse oder eCash.
632
633 #### URL:
634
635 <https://pdf.form-solutions.net/ws2/getbaselink.php>
636
637 #### Übergabeparameter
638
639 ##### Geforderte Daten:
640
641 * **cms**
642 CMS-Key des Kunden
643 * **user**
644 Benutzernummer des Benutzers im FS-System
645 * **form**
646 Formularnummer
647
648 ##### Zurückgegebene Daten
649
650 * **Sicherer Link**
651
652 > _**Hinweis:**_
653 >
654 > Diese Funktion steht für Assistenten nicht zur Verfügung.
655
656 ### Individualformular-Link erstellen
657
658 Diese Funktion öffnet einen Konfigurationsdialog, in dem der Benutzer ein übergebenes Formular konfigurieren kann. Nach Abschluss dieser Funktion wird die generierte URL an eine übergebene Ziel-URL weitergereicht.
659
660 #### URL:
661
662 <https://pdf.form-solutions.net/ticket-in.php>
663
664 #### Übergabeparameter:
665
666 * **usr**
667 Benutzernummer des Benutzers im FS-System
668 * **ticket**
669 Ticketnummer, die zuvor per Webservice angefordert wurde
670 * **type**
671 `formlink`
672 * **formular**
673 Formularnummer
674 * **formtype**
675 Ist dies ein von MACH ProForms oder ein vom Kunden erstelltes Formular? (`fs`, `knr`) (siehe 3.6.3.2 getformlist - Zurückgegebene Daten, Variable `formtype`)
676 * **return** URL an die der erstellte Formular-Link übergeben werden soll. Diese URL muss so aussehen, dass am Ende der URL der Formular-Link angefügt werden kann.
677 Bsp: <https://pdf.form-solutions.net/ws2/back.php?data=>
678 Des Weiteren muss der übergebene Link urlencoded gesendet werden. In dem übergebenen Link wird zusätzlich urlencoded mit dem Parameter title der Titel des Formulars und mit dem Parameter `id` die Formularnummer mitgegeben.
679
680 > _**Hinweis:**_
681 >
682 > Diese Funktion steht für Assistenten nicht zur Verfügung.