Tutorial: Web-Schnittstellen - POST
Informationen
- Der nachfolgende Workflow vermittelt das Basiswissen, um eine Web-Schnittstelle in PLANTA project mit den mitgelieferten Funktionen zu erstellen.
- Das Ziel dieses Workflows ist eine Web-Schnittstelle, die neue Vorgänge anlegt
Voraussetzung
- Grundlegendes Customizing-Wissen
- Grundlegendes Wissen über REST
Hinweise
- Um Web-Schnittstellen nutzen zu können, müssen die PLANTA link-Webservices in der web.conf aktiviert und konfiguriert sein:
generic_service
= truegeneric_service_interface
undgeneric_service_port
enthalten sinnvolle Daten
- Sind die Webservices nicht aktiviert, werden an manchen Stellen die Schaltflächen zur Ausführung verschiedener Aktionen, für die die Webservices erforderlich sind, nicht angezeigt.
- Web-Schnittstellen verwenden standardmäßig den Fully Qualified Domain Name (FQDN) als Adresse. Ist dieser nicht verfügbar, wird auf den Hostnamen der Maschine zurückgegriffen. Ist dieser nicht verfügbar, wird auf die IP der Maschine zurückgegriffen. Ein expliziter Hostname kann mit der Globalen Einstellung
planta_link_hostname
definiert werden.
Bitte für alle Felder in den Web-Schnittstellen-Modulen Groß-/Kleinschreibung beachten!
Web-Entität anlegen
Ziel
- Anlegen einer Web-Entität, die unsere Daten beschreibt
Vorgehensweise
- Das Panel Konfiguration öffnen
- Im Untermodul Web-Entitäten eine neue Entität einfügen
- Über den Kontextmenüeintrag Einfügen → Web-Entität oder
- Klick auf den Button Einfügen
- Bezeichnung vergeben und im Feld Datentabelle die Tabelle 463 auswählen
- Über den Kontextmenüeintrag der neu erstellten Web-Entität Einfügen → Web-Attribut drei Web-Attribute einfügen:
- DI001097 Projekt-ID mit der Bezeichnung project
- DI000807 Vorgangsbezeichnung mit der Bezeichnung name
- DI008851 ID übergeordneter Vorgang mit der Bezeichnung parent
- Speichern
Web-Schnittstelle anlegen
Ziel
- Anlegen einer Web-Schnittstelle, welche eingehende Requests verarbeitet und unsere Vorgänge anlegt
Vorgehensweise
- Das Panel Konfiguration öffnen
- Eine neue Web-Schnittstelle anlegen
- Über den Kontextmenüeintrag Einfügen → Web-Schnittstelle oder
- Klick auf den Button Einfügen
- Felder wie folgt ausfüllen:
- Die Bezeichnung ist frei wählbar
- Das Feld Aktiv muss aktiviert werden, bevor die Schnittstelle eingesetzt wird.
- Im Feld Url einen Platzhalter anlegen, beispielsweise:
/task
- Einen API Schlüssel vergeben
- Die POST-Implementation
DefaultServiceImplementation
auswählen - Die aus vorigen Schritt neu erstellte Entität im Feld Web-Entität auswählen
Web-Schnittstelle testen
Ziel
- Die neu angelegte Web-Schnittstelle testen
Vorgehensweise
- Durch Betätigen des Buttons öffnet sich das Modul Web-Schnittstelle testen
- Als HTTP-Methode POST auswählen
- Auf die Abfrage, ob eine Vorlage einkopiert werden soll, die Schaltfläche Ja betätigen
- Für den URL-Filter das Projekt 4711 konfigurieren
- Um den Datensatz korrekt anzulegen, muss die technische ID des Projektes ermittelt werden. In diesem Fall: 000008.
- Das einkopierte Template wie folgt füllen:
{"project": "000008", "name": "Sammelvorgang", "parent": ""}
- Den Button Ausführen betätigen
- Der Platzhalter in der URL wird automatisch mit dem übergebenen Wert ersetzt und der API-Schlüssel im HTTP-Header mitgegeben.
- Als Antwort auf eine erfolgreiche Abfrage antwortet der Server mit den Autonummern des angelegten Datensatzes wie folgt:
{"task_id": "12"}
- Die ID kann für eine erneute Abfrage mit dem folgenden Request verwendet werden:
{"project": "000008", "name": "Vorgang", "parent": "12"}
- Wird nun der Terminplan des Projektes geöffnet, befinden sich dort zwei neue strukturierte Vorgänge.