IBM TRIRIGA Application Platform Version 3 Release 5.2 Connectors Benutzerhandbuch IBM Hinweis Vor Verwendung dieser Informationen und des darin beschriebenen Produkts sollten die Informationen unter „Bemerkungen” auf Seite 59 gelesen werden. Diese Ausgabe bezieht sich auf Version 3, Release 5, Modifikation 2 von IBM TRIRIGA Application Platform und alle nachfolgenden Releases und Modifikationen, bis dieser Hinweis in einer Neuausgabe geändert wird. © Copyright IBM Corporation 2011, 2016. Inhaltsverzeichnis Kapitel 1. Daten mit externen Anwendungen integrieren . . . . . . . . . . 1 Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren . . . . . . . 3 Übersicht über das TRIRIGA-Integrationsobjekt. . . 3 Datenschemas . . . . . . . . . . . . . 3 Datenbanktools . . . . . . . . . . . . 4 Dateitools . . . . . . . . . . . . . . 7 HTTP-Post-Token . . . . . . . . . . . . 7 Abgehende Abfragen . . . . . . . . . . 7 Datenzuordnungen . . . . . . . . . . . 8 Antwortzuordnungen . . . . . . . . . . 11 Datenvalidierung . . . . . . . . . . . 12 Daten mithilfe von Datenbanktabellen importieren und exportieren . . . . . . . . . . . . . 13 Daten mit dem Datenbankschema importieren. . 13 Daten mit dem Datenbankschema exportieren . . 14 Daten mit Dateien importieren und exportieren . . 14 Daten mit dem Dateischema importieren . . . 15 Daten mit dem Dateischema exportieren. . . . 15 Daten in DataConnect-Staging-Tabellen importieren 16 Daten mit dem DataConnect-Schema importieren 16 Daten mit dem HTTP-Protokoll exportieren . . . 16 Daten mit dem HTTP-Post-Schema exportieren 17 Beispiel: Daten in Esri-Geocodierungsintegrationen exportieren . . . . . . . . . . . . 17 Integrationsausführung . . . . . . . . . . 21 Ausführung über Formulare . . . . . . . . 21 Beispiel: Ausführung über angepasste Aufgaben 21 Ausführung über URLs . . . . . . . . . 23 Ausführung von DataConnect-Prozessen . . . 25 Fehlerbehandlung . . . . . . . . . . . 25 Integrationselemente . . . . . . . . . . . 26 Abgehende Formate . . . . . . . . . . 26 Objektupgrades . . . . . . . . . . . . 30 Objektmigrationen . . . . . . . . . . . 31 Objektelemente . . . . . . . . . . . . 31 Objektversionen . . . . . . . . . . . . 32 Standardworkflows . . . . . . . . . . . 32 Standardabfragen . . . . . . . . . . . 34 Standardlisten . . . . . . . . . . . . 34 Esri-Datenservices und IBM TRIRIGA-Tools . Esri-Integrationspunkte . . . . . . . . Karten in GIS-Portalabschnitten. . . . . . Karten auf GIS-Formularregisterkarten . . . Übersicht über GIS-Kartenelemente . . . . . Abmessungen . . . . . . . . . . . Abfragen . . . . . . . . . . . . . Basiskarten . . . . . . . . . . . . Ebenen . . . . . . . . . . . . . . Symbole . . . . . . . . . . . . . Widgets . . . . . . . . . . . . . Widgetgruppen . . . . . . . . . . . Geometrieservices . . . . . . . . . . Vorgaben voranzeigen . . . . . . . . . GIS-Karten konfigurieren . . . . . . . . . Angepasste GIS-Portalabschnitte hinzufügen . . ArcGIS-Server angeben . . . . . . . . . Interne ArcGIS-Server angeben . . . . . . Umstellung von internen auf externe Server . Fehlerbehebung bei GIS-Karten . . . . . . . Gängige Probleme mit GIS-Karten . . . . . Doppelte Datensätze aus GIS-Karten entfernen . . . . . . . . . . . . . . . . . . . . . 37 38 39 40 41 41 41 42 42 43 43 44 45 45 45 46 46 46 47 48 48 49 Kapitel 4. Connectorfunktionen erweitern . . . . . . . . . . . . . . . . 51 Übersicht über erweiterte Funktionen. . . . . Angepasste Klassenladeprogramme . . . . Angepasste Klassen und angepasste Aufgaben. Entwicklungsmodus des Klassenladeprogramms Servlet-Proxys . . . . . . . . . . . Servlet-Proxy-Zugriff . . . . . . . . . Klassenladeprogrammen Ressourcendateien hinzufügen . . . . . . . . . . . . . . . Servlet-Proxys konfigurieren . . . . . . . . Fehlerbehebung bei erweiterten Funktionen . . Gängige Probleme mit erweiterten Funktionen . 51 . 51 . 52 53 . 53 . 54 . . . . 55 56 57 57 Bemerkungen . . . . . . . . . . . . 59 Marken . . . . . . . . . . . . . . . . 61 Nutzungsbedingungen für die Produktdokumentation . . . . . . . . . . . . . . . . . 61 IBM Online-Datenschutzerklärung . . . . . . . 62 Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren . . . . . . . 37 Übersicht über GIS-Karten . © Copyright IBM Corp. 2011, 2016 . . . . . . . . 37 iii iv © Copyright IBM Corp. 2011, 2016 Kapitel 1. Daten mit externen Anwendungen integrieren Sie verwenden die Connector-Tools von IBM® TRIRIGA Application Platform, um Daten in Ihre IBM TRIRIGA-Datenbank zu importieren, um Daten in der Datenbank zu aktualisieren und um Daten aus der Datenbank zu exportieren oder um Daten mit IBM TRIRIGA-Anwendungen zu verlinken oder gemeinsam zu nutzen. Zu diesen Tools gehören das TRIRIGA-Integrationsobjekt, IBM TRIRIGA Connector for Esri Geographic Information System (GIS), IBM TRIRIGA Connector for Business Applications, IBM TRIRIGA-DataConnect, das Tool "Datenintegrator" von IBM TRIRIGA und die OSLC-Integration. © Copyright IBM Corp. 2011, 2016 1 2 © Copyright IBM Corp. 2011, 2016 Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren Das TRIRIGA-Integrationsobjekt ist ein Geschäftsobjekt für Dienstprogramme im Modul triIntegration, das die Metadaten enthält, die die Integration zwischen IBM TRIRIGA und externen Systemen steuern. Wenn Sie Integrationsdefinitionen mit dem TRIRIGA-Integrationsobjekt erstellen, verwenden Sie IBM TRIRIGA-Standardtools wie Workflows und Abfragen, um Integrationsverbindungen zu erstellen. Übersicht über das TRIRIGA-Integrationsobjekt Wenn Sie das Integrationsobjekt zum Definieren einer neuen Integrationsdefinition verwenden, müssen Sie das Datenschema auswählen. Je nach Schemaauswahl müssen Sie mehrere Elemente definieren, beispielsweise die Datenquelle, die Importoder Exportdatei, die abgehende Abfrage, die Datenzuordnung und die Antwortzuordnung. Integrationsobjektdatensätze Wenn Sie eine neue Integrationsdefinition definieren möchten, müssen Sie aus dem TRIRIGA-Integrationsobjekt einen Integrationsobjektdatensatz erstellen. Zum Anzeigen vorhandener Integrationsobjektdatensätze wählen Sie Tools > Systemkonfiguration > Integration > Integrationsobjekt aus. Datenschemas Wenn Sie eine neue Integrationsdefinition definieren, müssen Sie eine Auswahl unter mehreren Optionen oder Schemas treffen, um die Nutzdaten, das Protokoll und den Transport für die Daten zu definieren. Das Datenbankschema verwendet Datenbanktabellen, um Daten zu importieren und zu exportieren. Das Dateischema verwendet Dateien, um Daten zu importieren und zu exportieren. Das DataConnect-Schema importiert Dateien in DataConnect-Staging-Tabellen. Das HTTP-Post-Schema exportiert Daten mit dem HTTPProtokoll. Datenbankschema Wenn Sie das Datenbankschema für eingehende Daten auswählen, müssen Sie die Datenquelle und die Datenzuordnung definieren. Die Datenzuordnung wird verwendet, um die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zuzuordnen. Wenn Sie das Datenbankschema für abgehende Daten auswählen, müssen Sie die Datenquelle und die abgehende Abfrage definieren. Die abgehende Abfrage wird verwendet, um die Felder zu definieren, die aus Ihrer IBM TRIRIGA-Datenbank exportiert werden. © Copyright IBM Corp. 2011, 2016 3 Dateischema Wenn Sie das Dateischema für eingehende Daten auswählen, müssen Sie die Importdatei und die Datenzuordnung definieren. Die Datenzuordnung wird verwendet, um die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zuzuordnen. Wenn Sie das Dateischema für abgehende Daten auswählen, müssen Sie die Exportdatei und die abgehende Abfrage definieren. Die abgehende Abfrage wird verwendet, um die Felder zu definieren, die aus Ihrer IBM TRIRIGA-Datenbank exportiert werden. DataConnect-Schema Wenn Sie das IBM TRIRIGA-DataConnect-Schema für eingehende Daten auswählen, müssen Sie die Datenquelle, die Importdatei, den DataConnect-Job und die Datenzuordnung definieren. Die Datenquelle wird verwendet, um auf die DataConnect-Staging-Tabellen zuzugreifen. Die Datenzuordnung wird verwendet, um die Daten aus der Datei den DataConnect-Staging-Tabellen zuzuordnen. Mit diesem Schema können Sie Workflows für die Verarbeitung und Validierung von Daten verwenden, was Ihnen mehr Kontrolle über die Fehlerbehandlung gibt. Informationen zu DataConnect finden Sie in der Veröffentlichung Erstellung von Anwendungen für IBM TRIRIGA Application Platform: Datenmanagement. HTTP-Post-Schema Wenn Sie das HTTP-Post-Schema für abgehende Daten auswählen, müssen Sie den Server, an den die Daten gesendet werden, die abgehende Abfrage und die Antwortzuordnung auswählen. Die abgehende Abfrage wird verwendet, um die Felder zu definieren, die aus Ihrer IBM TRIRIGA-Datenbank exportiert werden. Die Antwortzuordnung wird verwendet, um die Antwortparameter aus der HTTP-Anforderung den vorhandenen IBM TRIRIGA-Feldern zuzuordnen. Datenbanktools Wenn Sie das Datenbankschema oder DataConnect-Schema auswählen, können Sie die Datenbankverbindung testen, die Testdaten generieren und die SQL für die Datenbanktabelle generieren. Zum Exportieren großer Binärobjekte müssen Sie eine dynamische abgehende Abfrage verwenden. Datenbankverbindungstest Sie wählen die Aktion Datenbankverbindung testen aus, um zu überprüfen, ob der Server mit der Datenbank kommunizieren kann. Der Tabellenname wird verwendet, um eine Abfrage des Typs select 1+1 from [Tabellenname] an die Datenbank abzusetzen. Die Farbe der Überschrift des Abschnitts "Datenbank" ändert sich in rot, wenn ein Fehler auftritt. Zum Anzeigen der Fehler sehen Sie sich die Serverprotokolle in der IBM TRIRIGA-Administratorkonsole an. Informationen zur Administratorkonsole finden Sie in der Veröffentlichung IBM TRIRIGA Application Platform 3 Administratorkonsole Benutzerhandbuch. 4 © Copyright IBM Corp. 2011, 2016 Erforderlicher Tabellenzugriff für das DataConnect-Schema Das DataConnect-Schema ist von den internen IBM TRIRIGA-APIs getrennt und verwendet IBM TRIRIGA Connector for Business Applications, um mit TRIRIGA zu kommunizieren. Mit dem DataConnect-Schema können Sie auf die Datenbank zugreifen, um die Tabellen zu untersuchen, die Tabellen zu lesen und in die Tabellen zu schreiben. Das DataConnect-Schema erfordert Zugriff auf die folgenden Tabellen. Mit Ausnahme der Tabellen "DC_JOB" und "S_" werden die folgenden Tabellen verwendet, um die Spalten zu bestimmen, die für die DataConnect-Objekte verfügbar sind. Dieselben Tabellen müssen Leseberechtigungen für den Benutzer haben, der in der Datenquelle ausgewählt ist. IBS_SPEC_TYPE_STAGE Lesezugriff. IBS_SPEC_TYPE Lesezugriff. SYS.COLUMNS (Microsoft SQL Server) Lesezugriff. SYS.TABLES (Microsoft SQL Server) Lesezugriff. IBS_MODULE Lesezugriff. ALL_TAB_COLUMNS (Oracle Database) Lesezugriff. DC_JOB Lese- und Schreibzugriff. S_ Lese- und Schreibzugriff. Erstellung generischer SQL Sie wählen die Aktion SQL für Tabelle generieren aus, um die generische SQL für die Definition Ihrer Datenbanktabelle zu definieren. Bevor Sie diese Aktion auswählen, geben Sie den Namen der Datenbanktabelle ein und nehmen die Datenzuordnung vor. Jede für die eingehende Integration verwendete Tabelle muss die folgenden Spalten enthalten: IMD_ID Die Transaktions-ID, die für jeden Eintrag in der Tabelle eindeutig ist. Diese ID ist mit der Datensatz-ID nicht identisch. IMD_STATUS Gibt den Status jedes Eintrags in der Tabelle an. Der Standardstatus "Bereit" bezeichnet zu verarbeitende Datensätze. Weitere Status sind "Verarbeitung", "Abgeschlossen" und "Fehlgeschlagen". IMD_MESSAGE Identifiziert alle Fehler beim Import der Zeile. Dieselben Fehlernachrichten werden auch im Formular "Integrationsobjekt" angezeigt. TRIRIGA_RECORD_ID Die interne Datensatz-ID, die IBM TRIRIGA verwendet, um den Datensatz zu identifizieren, der gerade aktualisiert bzw. erstellt wird. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 5 Der folgende Beispielcode wurde für die eingehende Integration eines Personendatensatzes mit den vorherigen Feldern generiert. -- Auto generated script for MSSQL. CREATE TABLE example_people_in ( IMD_ID NUMERIC (18, 0) IDENTITY(1,1) NOT NULL, IMD_STATUS VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null DEFAULT ’Ready’, IMD_MESSAGE VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null, TRIRIGA_RECORD_ID VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null, TRI_ID VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null, FIRST_NAME VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null, LAST_NAME VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null, LANGUAGE VARCHAR(1000) COLLATE SQL_Latin1_General_CP1_CS_AS null ) Testdatenerstellung Sie wählen die Aktion Testdaten generieren aus, um Testdaten in Ihre Datenbank zu laden. Diese Aktion ist nur in eingehender Richtung verfügbar. Nachdem Sie die Datenbanktabelle erstellt und sichergestellt haben, dass eine Verbindung zur Tabelle hergestellt werden kann, können Sie Testdaten in Ihre Datenbank laden. Sie verwenden die Testdaten für die Ausführung einfacher Funktionstests, um sicherzustellen, dass die Zuordnungen korrekt sind und dass der Integrationsprozess ordnungsgemäß funktioniert. Geben Sie die Anzahl der in die Datenbanktabelle einzufügenden Zeilen im Feld Testzeilen ein. Die Daten werden als alphanumerische Werte generiert. Wenn Sie einen Standardwert in Ihrer Datenzuordnung angeben, wird dieser Wert für alle Zeilen eingefügt. Der Standardwert ist hilfreich, wenn das Feld ein Locatorfeld, ein Zahlenfeld, ein Datumsfeld oder eine Liste sein kann, das bzw. die einen bestimmten Wert erfordert. Wenn ein externes System zum Füllen der Staging-Datenbank verwendet wird, muss das externe System nur die Felder füllen, die keine Metadatenfelder sind. Die Spalten "IMD_*" werden automatisch gefüllt. Nach der Aktualisierung bzw. Erstellung des Datensatzes enthält die Spalte "TRIRIGA_RECORD_ID" die Datensatz-ID, die diesen Datensatz in IBM TRIRIGA intern identifiziert. Unterstützung großer Binärobjekte Große Binärobjekte (BLOB, Binary Large Object) werden für Datenbankschemas für eingehende und abgehende Daten unterstützt. Zu den unterstützten BLOB-Typen gehören Binärfelder, Nachrichtenfelder und Dokumentmanagerinhalte. Bildfelder werden nicht unterstützt. Zum Exportieren von BLOB-Feldern müssen Sie eine Datenzuordnung als dynamische abgehende Abfrage verwenden. Wenn Sie Binärfelder und Hinweisfelder in die Datenzuordnung importieren, werden diese wie andere Feldtypen importiert. Der Wert des Attributs Extern für das BLOB-Feld muss mit dem Namen der Datenbankspalte übereinstimmen. Wenn Sie Dokumentmanagerobjekte importieren oder exportieren, muss das Integrationsobjekt für die Interaktion mit dem Dokumentgeschäftsobjekt des Dokumentmoduls konfiguriert werden. Die Datenzuordnung für den Import von Dokumenten muss beispielsweise für die Zuordnung zum Dokumentgeschäftsobjekt konfiguriert werden. Es ist kein tatsächlicher Wert für den binären Inhalt des Dokuments im Objekt vorhanden. Stattdessen wählen Sie eine beliebige Basisobjektspalte aus, z. B. ein Textfeld im Abschnitt "Allgemein", die Sie als Platzhalter für Ihren Inhalt verwenden. 6 © Copyright IBM Corp. 2011, 2016 Der externe Name kann beliebig gewählt werden, aber der Wert in der Spalte "Default" muss CONTENT sein. Dieser Wert ist der Auslöser, der das Dokumentmanagerobjekt mit dem Inhalt verbindet. Dateitools Wenn Sie das Dateischema oder das DataConnect-Schema auswählen, können Sie die Dateiverbindung testen. Sie können Daten von jeder Position im Netz lesen und an jede Position im Netz schreiben, auf die der Server zugreifen kann. Eingehende Integrationen Für eingehende Integrationen können Sie standardisierte Flachdateien mit Trennzeichen importieren. Sie können manuell ein Binärfeld angeben, das eine Kopie des zu importierenden Integrationsfelds ist. Sie können ein manuelles Feld zur Unterstützung der Tests angeben, damit die lokale Verarbeitung wiederholt werden kann, ohne die Importdatei zu überschreiben. Nach dem Import der Datei wird diese mit dem Verarbeitungsdatum umbenannt und in den Ordner "processed" verschoben. Wenn mehrere Workflowagenten in Ihrer IBM TRIRIGA-Umgebung ausgeführt werden, müssen alle Server Zugriff auf dieselbe Dateiposition oder eine eigene Kopie der Datei haben. Der Workflow, der während des Integrationsausführungsprozesses ausgeführt wird, muss Zugriff auf die Datei haben, unabhängig davon, welcher Workflowagent den Workflow startet. Abgehende Integrationen Für abgehende Integrationen können Sie Dateiformate exportieren, zu denen standardisierte Flachdateien mit Trennzeichen sowie .json-, .xml- und .xslt-Dateien gehören. HTTP-Post-Token Wenn Sie das HTTP-Post-Schema für abgehende Daten auswählen, können Sie den Werten in den Feldern HTTP-URL, HTTP-URI und Header Token hinzufügen. Sie können dem Feld Parameters, das nur für den Post-Typ Parameter sichtbar ist, auch Token hinzufügen. Ein Token ist ein Wert, der aus den Ergebnissen der abgehenden Abfrage für die HTTP-Anforderung stammt. Der Tokenname muss der Spaltenbeschriftung in Ihrer Abfrage exakt entsprechen und in geschweifte Klammern eingeschlossen sein. Wenn Sie beispielsweise den Wert der Spalte accountId aus den Ergebnissen der abgehenden Abfrage dem Feld HTTP-URI hinzufügen möchten, geben Sie /ws/account/{accountId}/property im Feld HTTP-URI ein. Zur Laufzeit gibt IBM TRIRIGA den Wert aus, der im Abfrageergebnis zurückgegeben wird. Wenn accountId den Wert 123 enthält, wird der URI /ws/account/123/property gesendet. Wenn eine Anforderung für Stapelverarbeitung mit Token abgesetzt wird, enthalten die Werte in der letzten Ergebniszeile die Token. Abgehende Abfragen Für abgehende Integrationen müssen Sie eine abgehende Abfrage zur Auswahl der aus Ihrer IBM TRIRIGA-Datenbank zu exportierenden Felder definieren. Sie kön- Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 7 nen eine von IBM TRIRIGA Report Manager abgehende Abfrage definieren. Es ist auch möglich, eine Datenzuordnung als dynamische abgehende Abfrage zu definieren. Von Report Manager abgehende Abfragen Wenn Sie eine abgehende Abfrage mit einer Abfrage von IBM TRIRIGA Report Manager definieren, wird die Zuordnung der Daten in der Abfragedefinition definiert. Die Berichtsbeschriftungen, die Sie für jedes Feld angeben, müssen den Namen der externen Tabellenspalte, den Namen des XML-Knotens, den Beschriftungswert oder den Namen der Überschriftsspalte für das Textfeld darstellen. Datenzuordnungen als dynamische abgehende Abfragen Wenn Sie eine abgehende Abfrage als dynamische Abfrage definieren, wird die Zuordnung der Daten in der Datenzuordnung definiert. Bei dieser Verwendung (abgehend) der Datenzuordnung ordnen Sie keine eingehenden Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zu. Stattdessen wählen Sie die aus Ihrer IBM TRIRIGA-Datenbank zu exportierenden Felder aus. Datenbankschema Wenn Sie das Datenbankschema verwenden und große Binärobjekte (BLOB, Binary Large Object) exportieren müssen, müssen Sie eine dynamische Abfrage verwenden. Sie können Binär-, Nachrichten- oder Dokumentmanagerinhaltfelder für den Export auswählen. Standarddaten Zur Festlegung von Standarddaten für Felder verwenden Sie eine dynamische Abfrage. Wenn Sie beispielsweise das HTTP-Post-Schema verwenden, können Sie eine dynamische Abfrage verwenden, um einen statischen Parameter oder Wert zu übergeben. Damit Standarddaten mit einer dynamischen Abfrage ordnungsgemäß funktionieren, müssen Sie zuerst Ihre Datenzuordnung mit den definierten Standarddaten definieren und speichern und dann die Aktion SQL für Tabelle generieren auswählen. Diese Aktion definiert die Spalte so, dass für neue Einfügungen die Standarddaten verwendet werden. Datenzuordnungen Für eingehende Integrationen müssen Sie eine Datenzuordnung definieren, die die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zuordnet. Für abgehende Integrationen können Sie jedoch auch eine Datenzuordnung als dynamische abgehende Abfrage definieren, um die aus der IBM TRIRIGA-Datenbank zu exportierenden Felder auszuwählen. Datenzuordnungen für eingehende Integrationen Wenn Sie die Datenzuordnung definieren, müssen Sie das Modul, das Geschäftsobjekt, das Formular und Felder definieren. Nach der Definition der Datenzuordnung müssen Sie die Zuordnung vor dem Datensatz speichern. Andernfalls gehen Ihre Änderungen verloren. Die Liste Standardaktion wird verwendet, wenn der zugeordnete Datensatz nicht gefunden wird und erstellt werden muss. Wenn der zugeordnete Datensatz vorhanden ist, wird die Standardaktion ignoriert und der Datensatz aktualisiert. Die verfügbaren Aktionen, die in der Liste Standardaktion aufgelistet werden, sind die Übergänge vom Nullstatus, die für den Datensatz verfügbar sind. 8 © Copyright IBM Corp. 2011, 2016 Die Datenzuordnung setzt sich aus den folgenden hierarchischen Formularelementen zusammen: Formular Zeigt die hierarchische Darstellung des Formulars an. Jedes Formular setzt sich aus Registerkarten zusammen. Registerkarte Zeigt die hierarchische Darstellung der Registerkarte an. Jede Registerkarte setzt sich aus Abschnitten zusammen. Grafikabschnitt Kann nicht zugeordnet werden. Abfrageabschnitt Kann nicht zugeordnet werden. Abschnitt mit mehreren Registerkarten Kann nicht zugeordnet werden. Feld in einem intelligenten Abschnitt Löst die Anzeige eines Popup-Fensters aus, in dem Sie definieren können, wie das Feld identifiziert wird. Wenn Sie ein Feld für einen intelligenten Abschnitt angeben, wählen Sie in dem Popup-Fenster das als Filter zu verwendende Formular aus. Anschließend wählen Sie das als Filter für den Abruf der Datensatz-ID zu verwendende Feld aus. Die Datensatz-ID des verlinkten intelligenten Abschnitts muss von IBM TRIRIGA Connector for Business Applications identifiziert werden. Locatorfeld Dient als Standardfeld, aber die Integration schlägt fehl, wenn die Daten nicht gefunden werden oder nicht eindeutig sind. Standardfeld Ein Textfeld, das als Zeichenfolge behandelt wird. Datumsfeld Wird in der Hierarchie nicht angezeigt. Stattdessen verwenden Sie die Feldattributtabelle, um das richtige IBM TRIRIGA-Datumsformat für die eingehenden Daten zu definieren. Schreibgeschütztes Feld Ist durchgestrichen und kann nicht zugeordnet werden, kann aber als Schlüsselfeld zur Identifizierung des Datensatzes verwendet werden. Erforderliches Feld Wird in roter Schrift angezeigt und ist zum Erstellen des Datensatzes erforderlich. Die Integration schlägt fehl, wenn dieses Feld nicht zugeordnet ist. Jedes Feld in der Datenzuordnung hat die folgenden Feldattribute: Übergeordnetes Basiselement Für hierarchische Geschäftsobjekte wie Geografie, Lokation und Organisation der Pfad, der das Stammelement der Hierarchie identifiziert. Um sicherzustellen, dass der Datensatz unter dem richtigen Stammelement der Hierarchie erstellt wird, müssen Sie den Pfad angeben. Wenn Sie den Pfad nicht angeben, wird der Datensatz auf derselben Ebene wie das Stammelement erstellt, und Sie können den Datensatz im Formular nicht sehen und nicht auf ihn zugreifen. Ein Beispiel für JBoss Application Server ist \Location. Ein Beispiel für Oracle WebLogic Server ist \\Location. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 9 Typ Der Metadatendefinitionstyp des Feld. Alle Felder werden als Zeichenfolgen behandelt. Beispiele sind Liste, Zahl und Text. Extern Der Name des externen Felds, das Sie IBM TRIRIGA zuordnen möchten. Da die Werte für Datenbankspalten oder formatierte Dateien verwendet werden können, verwenden Sie keine Leerzeichen, Sonderzeichen und Zahlen. Ein Beispiel ist "User_Language". Wenn das Feld in der Antwortzuordnung des HTTP-Post-Schemas verwendet wird, können Sie eine XPath-Zeichenfolge oder eine JSONPath-Zeichenfolge verwenden. isKey Gibt an, ob der eingehende Datensatz ein Feld hat, das als Schlüssel definiert ist. Wenn ja, wird der Wert für die eingehende Datenzeile als Filter für das abgefragte Geschäftsobjekt verwendet und eine einzige DatensatzID zurückgegeben. Zum Aktualisieren von Datensätzen in IBM TRIRIGA benötigen Sie die Datensatz-ID, um den Datensatz zu identifizieren. Wenn keine Datensatz-ID gefunden wird oder mehrere Datensatz-IDs zurückgegeben werden, erstellt die Zeile einen Datensatz mit allen Werten für die Zeile. isParent Gibt an, ob der eingehende Datensatz ein Feld enthält, das als übergeordnetes Element definiert ist. Wenn ja, wird der Wert für den eingehenden Datensatz als Filter in der Abfrage verwendet, die zum Erfassen der Datensatz-ID für das übergeordnete Element verwendet wird. Durch die Identifizierung des übergeordneten Datensatzes eines anderen Datensatzes kann die Hierarchie erstellt werden. Zum Identifizieren des untergeordneten Datensatzes eines anderen Datensatzes müssen Sie die Datensatz-ID des übergeordneten Elements in der Anforderung zum Erstellen des Datensatzes (create-record) bzw. in der Anforderung zum Aktualisieren des Datensatzes (update-record) angeben. Wenn Sie diesen Wert in der Datenzuordnung definieren, wird die Identifizierung des übergeordneten Elements automatisch durchgeführt. Wenn kein übergeordnetes Element gefunden wird oder wenn mehrere übergeordnete Elemente zurückgegeben werden, wird eine Warnung protokolliert, und der Datensatz wird auf derselben Ebene wie das Stammelement erstellt. Standard Der konstante Wert, der auf alle Instanzen des Datensatzes angewendet wird. Ein Beispiel ist "Amerikanisches Englisch". Wenn Sie einen Standardwert angeben, wird der Wert im Feld Extern ignoriert, und die Standardspalte darf nur in dieser Datenzuordnung enthalten sein. Der Standardwert wird nur zur Laufzeit vom Dateischema und vom HTTP-Post-Schema verwendet. Wenn Sie das Datenbankschema ausgewählt haben, müssen Sie die Aktion SQL für Tabelle generieren auswählen, um den Standardwert in der Staging-Tabelle zu definieren. Der Wert wird zur Laufzeit ignoriert. Datenzuordnungen für eingehende DataConnect-Integrationen Wenn Sie die Datenzuordnung definieren, müssen Sie das Modul, das Geschäftsobjekt, das Formular und die Staging-Tabelle angeben. Nach der Definition der Datenzuordnung müssen Sie die Zuordnung vor dem Datensatz speichern. Andernfalls gehen Ihre Änderungen verloren. 10 © Copyright IBM Corp. 2011, 2016 Die Datenzuordnung für DataConnect-Integrationen gleicht den Datenzuordnungen, die für andere eingehende Integrationen verwendet werden. Die einzigen zu beachtenden Ausnahmen bzw. Hinweise sind im Folgenden beschrieben: Module Die Liste der Module ist für Module mit Geschäftsobjekten spezifisch, in denen die Eigenschaft Hat Staging-Tabelle aktiviert ist. Geschäftsobjekte Die Liste der Geschäftsobjekte ist für Geschäftsobjekte spezifisch, in denen die Eigenschaft Hat Staging-Tabelle aktiviert ist. Formulare Es muss ein Wert im Feld Formulare angegeben werden, damit der Prozess ordnungsgemäß funktioniert. Staging-Tabelle Bei Auswahl eines Geschäftsobjekts wird eine Abfrage ausgeführt und die verfügbaren Datenbankspalten aus der Staging-Tabelle, die dem Geschäftsobjekt zugeordnet sind, werden angezeigt. Das Feld Staging-Tabelle wird gefüllt und schreibgeschützt. Felder Die Hierarchie zeigt die Felder, die als Staging-Tabellenfelder definiert sind. Die schreibgeschützten Felder, die durchgestrichen sind, werden vom automatischen Prozess verwendet und können nicht zugeordnet werden. Die anderen Felder sind verfügbar. Feldattribute Wenn Sie ein verfügbares Feld auswählen, wird der Feldattributtabelle eine neue Zeile hinzugefügt. Das Attribut Extern zeigt standardmäßig den Namen der Datenbankspalte an, aber Sie können das Attribut auch an Ihren Dateiheader anpassen. Die Attribute isKey, isParent und Default sind schreibgeschützt und werden nicht verwendet. Weil Sie die Importdatei den Spalten der Staging-Datenbank zuordnen, muss die erste Zeile der Importdatei Spalten haben, die den Werten des Attributs Extern entsprechen. Die Reihenfolge der Spalten spielt keine Rolle, aber bei der Angabe der Spaltennamen muss die Groß-/Kleinschreibung beachtet werden. Wenn die Werte des Attributs Extern in der Datenzuordnung beispielsweise als Feld1, Feld2, Feld3 aufgelistet sind, können die tatsächlichen externen Spalten die Namen Feld2, Feld1 und Feld3 haben. Solange die Namen identisch sind, werden die Felder ordnungsgemäß angewendet. Datenzuordnungen für abgehende Integrationen Für abgehende Integrationen müssen Sie eine abgehende Abfrage zur Auswahl der aus Ihrer IBM TRIRIGA-Datenbank zu exportierenden Felder definieren. Sie können eine von IBM TRIRIGA Report Manager abgehende Abfrage definieren. Es ist auch möglich, eine Datenzuordnung als dynamische abgehende Abfrage zu definieren. Antwortzuordnungen Für abgehende HTTP-Post-Integrationen müssen Sie eine Antwortzuordnung definieren, die die Antwortparameter aus der HTTP-Anforderung vorhandenen IBM TRIRIGA-Feldern zuordnet. Obwohl die Antwortzuordnung wie die Datenzuordnung aufgebaut ist, gilt sie nur für das HTTP-Post-Schema und lässt nur einfache Antwortwerte zu. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 11 Datenvalidierung Sie können Integrationsobjektdatensätze validieren und die maximale Anzahl an Gültigkeitsfehlern angeben, die auftreten dürfen, bevor der Importprozess gestoppt wird. Sie können diese Datensätze mit oder ohne das Laden von Datensätzen in TRIRIGA-Staging-Tabellen und mit oder ohne das Erstellen von DataConnect-Jobs validieren. Auf der Registerkarte "Datenzuordnung" werden für die Validierung außerdem Zeitformatierungsoptionen bereitgestellt. Die Datenvalidierung ist nur verfügbar, wenn Sie Daten mit dem DataConnect-Schema importieren. Optionen für die Datenvalidierung Wenn Sie angeben, ob ungültige Optionen validiert und identifiziert werden sollen, stehen Ihnen die folgenden Möglichkeiten zur Verfügung: v Sie können angeben, ob eine Datendatei mit ungültigen Datensätzen erstellt und an den Integrationsdatensatz angehängt werden soll. v Sie können angeben, ob Staging-Tabellen mit gültigen Datensätzen geladen oder Daten validiert werden sollen, ohne Staging-Tabellen zu laden. Wenn Sie angeben, dass Staging-Tabellen mit gültigen Datensätzen geladen werden sollen, lädt der bei der Verarbeitung des Integrationsobjekt erstellte DataConnect-Job Daten aus der Staging-Tabelle in die Umgebung. Es werden Daten geladen, wenn mindestens ein gültiger Datensatz in der Datendatei vorhanden ist. v Geben Sie die maximale Anzahl an Gültigkeitsfehlern an, die auftreten dürfen, bevor der Importprozess gestoppt wird. Die Verarbeitung wird gestoppt, wenn diese maximale Anzahl an Fehlern oder das Ende der Datendatei erreicht wird. Der Wert 0 und negative Werte bedeuten, dass kein Maximalwert definiert ist und unabhängig von der Anzahl ungültiger Datensätze die gesamte Datei verarbeitet wird. v Geben Sie an, ob Datensätze basierend auf Zeitformatierungsoptionen validiert werden sollen. Zeitformatierungsoptionen Wenn Sie angeben, ob Datensätze basierend auf der Zeitformatierung validiert werden sollen, stehen Ihnen die folgenden Möglichkeiten zur Verfügung: v Zeitformatierungsoptionen sind in der Datenzuordnung sichtbar, wenn "Validate" ausgewählt ist. Datumswerte, Datums- und Zeitwerte, Werte für die Dauer und Zeitwerte, die in der Datendatei angegeben werden, müssen den Formaten entsprechen, die im Abschnitt mit den Zeitformatierungsoptionen angegeben sind. Andernfalls wird ein Gültigkeitsfehler festgestellt. v Um sicherzustellen, dass Datums- und Zeitformatwerte in die richtigen Epochenwerte konvertiert werden, müssen Sie die Zeitzonenregion auswählen, die den Datums- und Zeitwerten in der Datendatei entspricht. Die Sommerzeit wird automatisch basierend auf der angegebenen Zeitzonenregion verarbeitet. Die GMT-Offsetwerte, die neben jeder Zeitzonenregion angezeigt werden, sind für einige Zeitzonenregionen wegen der Sommerzeit möglicherweise nicht genau. Die Werte werden angegeben, um die Liste zu sortieren. v Bei der Angabe von Time Zone: Included with field values werden die Zeitzonenspezifikationen aus den Datums- und Zeitwerten in der Datendatei verwendet. Sie können alle gültigen Zeitzonen, die mit importierten Datums- und Zeitwerten importiert werden sollen, durch Auswahl von Valid Time Zones prüfen. Die Zeitzone muss am Ende der Feldwerte in der Datendatei stehen, z. B. "1/31/ 2015 10:00:00PM Pacific Standard Time". Beachten Sie, dass die Verwendung von 12 © Copyright IBM Corp. 2011, 2016 Abkürzungen wie "CST" zu unerwarteten Ergebnissen führen kann, da mehrere Zeitzonenregionen dieselbe Abkürzung haben können, z. B. "China Standard Time" und "Central Standard Time". v Bei Auswahl von Lenient Format Parsing werden Datums- und Zeitformatbereiche bei der Validierung der Datendatei nicht strikt geparst. Wenn das nicht strikte Formatparsing ausgewählt ist, wird beispielsweise das Datum "February 942, 1996" als 941. Tag nach dem 1. Februar 1996 interpretiert. Wenn das nicht strikte Formatparsing abgewählt ist, wird bei solchen Daten ein Gültigkeitsfehler ausgegeben. Bedingungen für die Datenvalidierung Die folgende Tabelle enthält Details zu den Bedingungen, die bei der Ausführung des Integrationsobjekts für eingehende Daten validiert werden. Tabelle 1. Validierung des Integrationsobjekts Bedingung Beschreibung Numerisches Feld Es wird geprüft, ob das Feld einen numerischen Wert enthält. Datum, Datum und Uhrzeit, Dauer und Zeit Es wird geprüft, ob der Wert dem im Abschnitt Time Formatting Options für das Feld angegebenen Format entspricht. Boolescher Datentyp Es wird geprüft, ob der Wert ein boolescher Wert ('true' oder 'false' mit Beachtung der Groß-/Kleinschreibung) ist. Klassifikation Es wird geprüft, ob der Wert in der Klassifikation in TRIRIGA vorhanden ist. Liste Es wird geprüft, ob der Wert in der Liste in TRIRIGA vorhanden ist. Textfeldlänge Es wird geprüft, ob der Wert die für das Feld im Datenmodellierer angegebene Größe überschreitet. Locatorfelder Es werden alle möglichen Datensätze für den Locator geprüft und außerdem wird geprüft, ob der Wert einem der Datensätze entspricht. Daten mithilfe von Datenbanktabellen importieren und exportieren Wenn Ihre Integration Datenbanktabellen zum Importieren oder Exportieren erfordert, verwenden Sie das TRIRIGA-Integrationsobjekt, um die Integration zu definieren. Das Datenbankschema für eingehende Daten ordnet die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zu. Das Datenbankschema für abgehende Daten definiert die aus der IBM TRIRIGA-Datenbank zu exportierenden Felder. Daten mit dem Datenbankschema importieren Wenn Sie das Datenbankschema für eingehende Daten auswählen, müssen Sie die Datenquelle und die Datenzuordnung definieren. Die Datenzuordnung wird verwendet, um die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zuzuordnen. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. 2. Fügen Sie einen Integrationsobjektdatensatz hinzu. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 13 3. Geben Sie den Integrationsnamen, das Datenbankschema, die Richtung "Eingehend", die Datenquelle und weitere Integrationsdetails an. 4. Testen Sie die Datenbankverbindung oder generieren Sie die Testdaten. 5. Definieren Sie die Daten, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Datenzuordnung. 6. Wenn Sie Standarddaten definiert haben oder generische SQL erstellen müssen, generieren Sie die SQL für die Datenbanktabelle. 7. Erstellen Sie den Datensatz und speichern Sie ihn. 8. Führen Sie die Integration aus. 9. Untersuchen Sie alle Fehler. Daten mit dem Datenbankschema exportieren Wenn Sie das Datenbankschema für abgehende Daten auswählen, müssen Sie die Datenquelle und die abgehende Abfrage definieren. Die abgehende Abfrage wird verwendet, um die Felder zu definieren, die aus Ihrer IBM TRIRIGA-Datenbank exportiert werden. Informationen zu diesem Vorgang Sie können eine von IBM TRIRIGA Report Manager abgehende Abfrage definieren. Es ist auch möglich, eine Datenzuordnung als dynamische abgehende Abfrage zu definieren. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. 2. Fügen Sie einen Integrationsobjektdatensatz hinzu. 3. Geben Sie den Integrationsnamen, das Datenbankschema, die Richtung "Abgehend", die Datenquelle und weitere Integrationsdetails an. 4. Testen Sie die Datenbankverbindung. 5. Definieren Sie die abgehende Abfrage. 6. Wenn Sie eine dynamische Abfrage ausgewählt haben, definieren Sie die Datenzuordnung, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Datenzuordnung. 7. Wenn Sie Standarddaten definiert haben oder generische SQL erstellen müssen, generieren Sie die SQL für die Datenbanktabelle. 8. Erstellen Sie den Datensatz und speichern Sie ihn. 9. Führen Sie die Integration aus. 10. Untersuchen Sie alle Fehler. Daten mit Dateien importieren und exportieren Wenn Ihre Integration Dateien zum Importieren oder Exportieren erfordert, verwenden Sie das TRIRIGA-Integrationsobjekt, um die Integration zu definieren. Das Dateischema für eingehende Daten ordnet die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zu. Das Dateischema für abgehende Daten definiert die aus der IBM TRIRIGA-Datenbank zu exportierenden Felder. 14 © Copyright IBM Corp. 2011, 2016 Daten mit dem Dateischema importieren Wenn Sie das Dateischema für eingehende Daten auswählen, müssen Sie die Importdatei und die Datenzuordnung definieren. Die Datenzuordnung wird verwendet, um die Daten aus der externen Quelle vorhandenen IBM TRIRIGA-Feldern zuzuordnen. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. 2. Fügen Sie einen Integrationsobjektdatensatz hinzu. 3. Geben Sie den Integrationsnamen, das Dateischema, die Richtung "Eingehend", die Importdatei und weitere Integrationsdetails an. 4. Testen Sie den Dateizugriff. 5. Definieren Sie die Daten, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Datenzuordnung. 6. Erstellen Sie den Datensatz und speichern Sie ihn. 7. Führen Sie die Integration aus. 8. Untersuchen Sie alle Fehler. Daten mit dem Dateischema exportieren Wenn Sie das Dateischema für abgehende Daten auswählen, müssen Sie die Exportdatei und die abgehende Abfrage definieren. Die abgehende Abfrage wird verwendet, um die Felder zu definieren, die aus Ihrer IBM TRIRIGA-Datenbank exportiert werden. Informationen zu diesem Vorgang Sie können eine von IBM TRIRIGA Report Manager abgehende Abfrage definieren. Es ist auch möglich, eine Datenzuordnung als dynamische abgehende Abfrage zu definieren. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. 2. Fügen Sie einen Integrationsobjektdatensatz hinzu. 3. Geben Sie den Integrationsnamen, das Dateischema, die Richtung "Abgehend", die Exportdatei und weitere Integrationsdetails an. 4. Testen Sie den Dateizugriff. 5. Definieren Sie die abgehende Abfrage. 6. Wenn Sie eine dynamische Abfrage ausgewählt haben, definieren Sie die Datenzuordnung, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Datenzuordnung. 7. Erstellen Sie den Datensatz und speichern Sie ihn. 8. Führen Sie die Integration aus. 9. Untersuchen Sie alle Fehler. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 15 Daten in DataConnect-Staging-Tabellen importieren Wenn Ihre Integration ein ETL-Tool erfordert, Sie aber keinen Zugriff auf ein solches Tool bzw. keine Erfahrung mit der Verwendung eines solchen Tools haben, verwenden Sie das TRIRIGA-Integrationsobjekt, um die Integration zu definieren. Das IBM TRIRIGA-DataConnect-Schema für eingehende Daten ordnet die Daten aus der Importdatei den DataConnect-Staging-Tabellen zu. Daten mit dem DataConnect-Schema importieren Wenn Sie das IBM TRIRIGA-DataConnect-Schema für eingehende Daten auswählen, müssen Sie die Datenquelle, die Importdatei, den DataConnect-Job und die Datenzuordnung definieren. Informationen zu diesem Vorgang Die Datenquelle wird verwendet, um auf die DataConnect-Staging-Tabellen zuzugreifen. Die Datenzuordnung wird verwendet, um die Daten aus der Datei den DataConnect-Staging-Tabellen zuzuordnen. Wenn Sie die Integration ausführen, werden Einträge mit einer Aktion upsert (Update or Insert, Aktualisieren oder Einfügen) in den DataConnect-Staging-Tabellen eingefügt oder aktualisiert. Sie müssen mindestens ein Feld als Schlüsselfeld auswählen. DataConnect verwendet die Schlüssel, um festzulegen, ob die Zeile eingefügt oder aktualisiert werden muss. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. 2. Fügen Sie einen Integrationsobjektdatensatz hinzu. 3. Geben Sie den Integrationsnamen, das DataConnect-Schema, die Datenquelle, die Importdatei und weitere Integrationsdetails an. 4. Testen Sie die Datenbankverbindung. 5. Testen Sie den Dateizugriff. 6. Erstellen Sie den Datensatz und speichern Sie ihn. 7. Definieren Sie die Daten, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Datenzuordnung. 8. Geben Sie an, ob ungültige Datensätze validiert und identifiziert werden sollen. Wenn Sie festlegen, dass keine Validierung durchgeführt werden soll, lädt der DataConnect-Job Daten nur dann aus der Staging-Tabelle in die Umgebung, wenn die vollständige Datendatei erfolgreich geladen wurde. 9. Speichern Sie den Datensatz. 10. Führen Sie die Integration aus. 11. Untersuchen Sie alle Fehler. Daten mit dem HTTP-Protokoll exportieren Wenn Ihre Integration erfordert, dass Ihre Daten mit dem HTTP-Protokoll (Hypertext Transfer Protocol) exportiert werden, verwenden Sie das TRIRIGA-Integrationsobjekt, um die Integration zu definieren. Das HTTP-Post-Schema für abgehende Daten ordnet die Antwortparameter aus der HTTP-Anforderung vorhandenen IBM TRIRIGA-Feldern zu. 16 © Copyright IBM Corp. 2011, 2016 Daten mit dem HTTP-Post-Schema exportieren Wenn Sie das HTTP-Post-Schema für abgehende Daten auswählen, müssen Sie den Server, an den die Daten gesendet werden, die abgehende Abfrage und die Antwortzuordnung auswählen. Informationen zu diesem Vorgang Die abgehende Abfrage wird verwendet, um die Felder zu definieren, die aus Ihrer IBM TRIRIGA-Datenbank exportiert werden. Die Antwortzuordnung wird verwendet, um die Antwortparameter aus der HTTP-Anforderung den vorhandenen IBM TRIRIGA-Feldern zuzuordnen. Sie können eine von IBM TRIRIGA Report Manager abgehende Abfrage definieren. Es ist auch möglich, eine Datenzuordnung als dynamische abgehende Abfrage zu definieren. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. 2. Fügen Sie einen Integrationsobjektdatensatz hinzu. 3. Geben Sie den Integrationsnamen, das HTTP-Post-Schema, den externen Server und weitere Integrationsdetails an. 4. Definieren Sie die abgehende Abfrage. 5. Wenn Sie eine dynamische Abfrage ausgewählt haben, definieren Sie die Datenzuordnung, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Datenzuordnung. 6. Definieren Sie die Antwortzuordnung, indem Sie das Modul, das Geschäftsobjekt, das Formular und die Felder angeben. Speichern Sie die Antwortzuordnung. 7. Erstellen Sie den Datensatz und speichern Sie ihn. 8. Führen Sie die Integration aus. 9. Untersuchen Sie alle Fehler. Beispiel: Daten in Esri-Geocodierungsintegrationen exportieren Sie können das HTTP-Post-Schema für abgehende Daten auswählen, um Daten aus Ihrer IBM TRIRIGA-Datenbank in einen Esri-Server zu exportieren. Anschließend können Sie die Antwortparameter aus der HTTP-Anforderung Ihren Lokationsdaten zuordnen, um deren Geocodes zu aktualisieren. Hintergrund Ichiro ist ein Integrationsspezialist in der Firma ABC. Er entwickelt IBM TRIRIGAIntegrationen für die Kunden der Firma ABC. Ichiro entwickelt gerade eine HTTP-Post-Integration für abgehende Daten mit einem externen Esri-Geocodierungsservice. Damit der Esri-Geocodierungsservice die zu geocodierenden Adressen bestimmen kann, muss die HTTP-Anforderung bestimmte Parameter in der Abfragezeichenfolge enthalten. Die Antwort liegt im JSON-Format vor. Die folgende HTTP-URL stellt Esri-Geocodierungsservices über die REST-API bereit: Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 17 http://geocode.arcgis.com/arcgis/rest/services /World/GeocodeServer/findAddressCandidates Da die Breitengrad- und Längengradwerte für die Gebäudedatensätze in der IBM TRIRIGA-Datenbank gespeichert werden, denkt Ichiro daran, dass die HTTP-URL ebenfalls spezielle Parameter für die Esri-Authentifizierung enthalten muss. Um seinen Hauptspeicher zu aktualisieren, ruft er die Webseite "Authenticate a request to the World Geocoding Service" (https://developers.arcgis.com/rest/geocode/apireference/geocoding-authenticate-a-request.htm) erneut auf. Er verwendet seine Client-ID und seinen geheimen Clientschlüssel als Berechtigungsnachweise für die Generierung seines eindeutigen Esri-Authentifizierungstokens, das in der Abfragezeichenfolge der HTTP-Anforderung enthalten ist. Die folgende HTTP-URL enthält die erforderlichen Parameter forStorage und token sowie die Parameterwerte: http://geocode.arcgis.com/arcgis/rest/services /World/GeocodeServer/findAddressCandidates?forStorage=true &token=Z43nqkyXY48Kx1iiPgCCZsh7Kf7ZxsKSH4xEO2Q8x34wiHU8wysAljsRzzYI51egzAr114CR0vgQ6fUt5a4eatD9FGejE4w8hTBY-f5vy5v1asxh_rXvLZsw6upiRPU Schritt 1: Integrationsdatenschema definieren Ichiro definiert den Integrationsobjektdatensatz mit den folgenden Felddetails: Name Geocodeadresse Schema Http Post Richtung Abgehend Post-Typ Abfragezeichenfolge Antworttyp JSON HTTP-URL http://geocode.arcgis.com/arcgis/rest/services /World/GeocodeServer/findAddressCandidates?forStorage=true &token=Z43nqkyXY48Kx1iiPgCCZsh7Kf7ZxsKSH4xEO2Q8x34wiHU8wysAljsRzzYI51egzAr114CR0vgQ6fUt5a4eatD9FGejE4w8hTBY-f5vy5v1asxh_rXvLZsw6upiRPU Abschnitt "Abfrage abgehender Daten": Ist dynamisch? Ja Schritt 2: Datenzuordnung definieren Da Ichiro eine dynamische Abfrage ausgewählt hat, definiert er die Datenzuordnung, indem er das Modul Location, das Geschäftsobjekt triBuilding, das Formular triBuilding und Felder angibt. Die Attributwerte des Felds Extern stellen die Parameternamen dar, die der Abfragezeichenfolge hinzugefügt werden. Da das Feldattribut Standard nicht verwendet wird, werden die Felddaten dynamisch aus den IBM TRIRIGA-Lokationsdatensätzen extrahiert. Er definiert die folgenden Felder mit den folgenden Attributwerten für Extern: triAddressTX Adresse triZipPostalTX ZIP 18 © Copyright IBM Corp. 2011, 2016 triCityTX Stadt triStateProvTX Staat/Bundesland Für zwei weitere Felder definiert Ichiro zwei weitere Werte für Extern, um die entsprechenden Werte für das Feld Standard anzugeben, die der Esri-Geocodierungsservice erfordert. Seine Werte für Extern sind outSR für WKID und f für das Format. Als entsprechende Werte für das Feld Standard legt er 102100 für WKID und json für das Format fest. Um seinen Wert 102100 zu überprüfen, überprüft er die WKID-Werte für das geografische Koordinatensystem (resources.arcgis.com/en/ help/rest/apiref/gcs.html) und das projizierte Koordinatensystem (resources.arcgis.com/en/help/rest/apiref/pcs.html). Er definiert die folgenden Felder mit seinen Attributwerten für Extern und Standard: triIdTX outSR und 102100 triDescriptionTX f und json Ichiro speichert die Datenzuordnung. Schritt 3: Antwortzuordnung definieren Als Nächstes definiert Ichiro die Antwortzuordnung, um die Antwort vom EsriGeocodierungsservice abzurufen und die abgerufenen Breiten- und Längengradwerte dem IBM TRIRIGA-Lokationsdatensatz zuzuordnen. Er definiert die Antwortzuordnung, indem er das Modul Location, das Geschäftsobjekt triBuilding, das Formular triBuilding und Felder angibt. Da die Antwort das JSON-Format hat, werden die Attributwerte für Extern in JSONPath-Syntax angegeben. Er definiert die folgenden Felder mit den folgenden Attributwerten für Extern: triGisLongitudeNU candidates[0].location.x triGisLatitudeNU candidates[0].location.y Ichiro speichert die Antwortzuordnung und den Integrationsobjektdatensatz. Schritt 4: Integrationsdefinition ausführen Wenn Ichiro die Formularaktion Ausführen auswählt, um die Integrationsdefinition zu starten, findet der folgende Prozess statt: v Die Datenzuordnungswerte werden zur Erstellung einer dynamischen Abfrage verwendet. Die Abfrage wird aufgerufen. v Da der Post-Typ eine Abfragezeichenfolge ist, wird jedes Ergebnis der Abfrage in die folgende URL-Struktur transformiert: http://geocode.arcgis.com/arcgis/rest/services /World/GeocodeServer/findAddressCandidates?forStorage=true &token=Z43nqkyXY48Kx1iiPgCCZsh7Kf7ZxsKSH4xEO2Q8x34wiHU8wysAljsRzzYI51egzAr114CR0vgQ6fUt5a4eatD9FGejE4w8hTBY-f5vy5v1asxh_rXvLZsw6upiRPU &Address=6720+Via+Austi+Pkwy&ZIP=89119&City=Las+Vegas &State=Nevada&outSR=102100&f=json Die tatsächlichen Parameter richten sich nach den tatsächlichen IBM TRIRIGADaten. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 19 v Das folgende JSON-Objekt zeigt die Antwort: { "spatialReference": { "wkid":102100,"latestWkid":3857 }, "candidates": [{ "address":"6720 Via Austi Pky, Las Vegas, NV, 89119", "location": { "x":-12819684.945332458, "y":4309927.0270621451 }, "score":100, "attributes": { } }, { "address":"6720 Via Austi Pky, Las Vegas, NV, 89119", "location": { "x":-12819744.862808136, "y":4309924.3334144857 }, "score":100, "attributes": { } }, { "address":"6721 Via Austi Pky, Las Vegas, NV, 89119", "location": { "x":-12819808.664131654, "y":4309995.0691041043 }, "score":79, "attributes": { } }, { "address":"Via Austi Pky, Las Vegas, NV, 89119", "location": { "x":-12819804.948472099, "y":4309871.0261052754 }, "score":100, "attributes": { } }] } v Die Antwortzuordnungswerte werden verwendet, um candidates[0].location.x und candidates[0].location.y aus dem JSON-Objekt zu extrahieren und sie den Feldern triGisLongitudeNU und triGisLatitudeNU im IBM TRIRIGA-Lokationsdatensatz zuzuordnen. Der Lokationsdatensatz wird mit den neuen Daten aktualisiert. v Da keine Aktion für die exportierten Daten im Abschnitt "Abfrage abgehender Daten" angegeben wurde, werden keine Aktionen für die Lokationsdaten ausgelöst. v Die endgültige Anzahl für den Integrationsprozess wird erfasst und ein Ausführungsprotokolldatensatz mit den Details zur Integrationsausführung und allen aufgetretenen Fehlern wird erstellt. 20 © Copyright IBM Corp. 2011, 2016 Integrationsausführung Ein Integrationsobjektdatensatz oder eine Integrationsdefinition kann nicht nur mit der Formularaktion Ausführen, sondern auch mit einer angepassten Aufgabe oder URL ausgeführt werden. Mit einer angepassten Aufgabe können Sie eine abgehende Abfrage mit Daten aus dem momentan ausgeführten Prozess filtern. Mit einer URL können Sie Parameter aus einer externen Anwendung übergeben, um die Aktion Ausführen auszulösen oder die Ergebnisse einer IBM TRIRIGA Report Manager-Abfrage im JSON-Format abzurufen. Ausführung über Formulare Nachdem Sie den Integrationsobjektdatensatz erstellt haben, können Sie die Formularaktion Ausführen verwenden, um die Integrationsdefinition zu starten. Diese Aktion führt den Workflow triIntegration - Execute aus. Der Integrationsobjektdatensatz wird schreibgeschützt und in den Status "Verarbeitung" versetzt. Nach fehlerfreiem Abschluss der Integrationsverarbeitung wird der Status des Integrationsobjektdatensatzes wieder auf "Bereit" gesetzt. Wenn während der Verarbeitung ein Fehler auftritt, wird der Status in "Fehlgeschlagen" geändert und der Datensatz ändert seinen Status nicht. Sie müssen die aufgetretenen Fehler dann manuell untersuchen. Sie können die Überprüfung jedoch überschreiben und den Status des Datensatzes wieder in "Bereit" ändern, indem Sie auf die Aktion Abschließen klicken. Der Abschnitt "Ausführungsprotokoll" enthält Einträge mit den Details zu jeder Integrationsausführung. Jeder Detaileintrag enthält den Status, die Anzahl der Verarbeitungsläufe und die Ausführungsdauer. Wenn bei einer Integrationsausführung Fehler auftreten, werden außerdem ein Protokoll der Fehler und ein Abfrageabschnitt eingefügt, in dem die einzelnen fehlerhaften Datensätze aufgelistet werden. Wenn die Integrationsausführung von einem anderen Workflow ausgelöst wird, enthält der Integrationsobjektdatensatz mit der vollständigen Übersicht über die Fehler auch eine abgeschnittene Nachricht. Die abgeschnittene Nachricht ist in einem verborgenen Textfeld enthalten, das z. B. in einer Warnung angezeigt werden kann. Abgehende Integrationen können jeweils 1000 Datensätze maximal verarbeiten. Wenn mehr als 1000 zu exportierende Datensätze vorhanden sind, erstellen Sie Ihre Workflowlogik so, dass die Integration so oft ausgeführt wird, bis alle Datensätze verarbeitet wurden. Beispiel: Ausführung über angepasste Aufgaben Nachdem Sie den Integrationsobjektdatensatz erstellt haben, können Sie eine angepasste Aufgabe verwenden, um eine abgehende Abfrage mit Daten aus dem momentan ausgeführten Prozess zu filtern. Hintergrund Ichiro ist ein Integrationsspezialist in der Firma ABC. Er entwickelt IBM TRIRIGAIntegrationen für die Kunden der Firma ABC. Ichiro aktualisiert einen Teil der Datensätze, aber er möchte eine Integration entwickeln, die einen Datensatz sendet, wenn ein Benutzer auf eine bestimmte Aktion klickt. Deshalb verwendet er ein angepasstes Sonderaufgabenobjekt, das Workflowvariablen verwendet, um Daten zu definieren, und das mit dem IntegrationKlassenladeprogrammdatensatz kommuniziert. Mithilfe dieses Features kann Ichiro Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 21 den Teil der Datensätze im Workflow unter Verwendung der gängigen Methoden erstellen. Anschließend kann er den Teil übergeben, indem er auf die angepasste Aufgabe verweist, und den Integrationsobjektdatensatz, den er auslösen möchte, einer Workflowvariablen mit dem Namen IntegrationObject zuordnen. Ichiros Basisworkflow enthält die folgenden Workflowaufgaben: v Startaufgabe v Abfrageaufgabe mit dem Namen Query For Integration Object v Variablendefinitionsaufgabe mit dem Namen Define IO as Variable v Variablendefinitionsaufgabe mit dem Namen IntegrationInstance v Abfrageaufgabe mit dem Namen Query for subset of people v Angepasste Aufgabe mit dem Namen Custom Task v Endaufgabe Schritt 1: Workflow definieren Ichiro wählt die Startaufgabe aus, definiert den Workflow als asynchronen Workflow und konfiguriert den Workflow so, dass er ausgeführt wird, wenn ein Personendatensatz (triPeople) gespeichert wird (triSave). Schritt 2: Erste Abfrageaufgabe definieren Ichiro fügt die erste Abfrageaufgabe ein und nennt sie Query For Integration Object. In dieser Aufgabe fragt er (Manager Default - Integration Objects) den Integrationsobjektdatensatz ab, den er auslösen möchte. Anschließend filtert er die Ergebnisse dieser Abfrage nach einem bestimmten Namen. Ichiro darf nur einen einzigen Integrationsobjektdatensatz als Ergebnis haben. Schritt 3: Erste Variablendefinitionsaufgabe definieren Ichiro fügt die erste Variablendefinitionsaufgabe ein und nennt sie Define IO as Variable. In dieser Aufgabe definiert er den Integrationsobjektdatensatz (triIntegration) als Variable. Das Ergebnis der Abfrage aus der vorherigen Aufgabe wird dieser Variablen zugeordnet. Schritt 4: Zweite Variablendefinitionsaufgabe definieren Ichiro fügt die zweite Variablendefinitionsaufgabe ein und nennt sie IntegrationInstance. In dieser Aufgabe definiert er das Integrationsinstanzobjekt (triIntegrationInstance) als Variable. Diese Rückkehrvariable wird für den Rückgabewert der angepassten Aufgabe am Ende des Workflows verwendet. Schritt 5: Zweite Abfrageaufgabe definieren Ichiro fügt die zweite Abfrageaufgabe ein und nennt sie Query for subset of people. In dieser Aufgabe ruft er den gefilterten Satz von Personendatensätzen ab, die für die Integration verarbeitet werden. Er fragt (triEmployee – Find) nach den Personendatensätzen ab. Anschließend filtert er die Ergebnisse nach Datensätzen, in denen der Vorname der Person (triFirstNameTX) Ichiro enthält. Ichiro prüft, ob das Personengeschäftsobjekt (triPeople) das Feld für die Datensatz-ID (triRecordIdSY) enthält. Das Feld für die Datensatz-ID (triRecordIdSY) muss für jedes Geschäftsobjekt, das in der an den Integrationsobjektdatensatz übergebenen Abfrageaufgabe verwendet wird, eingeschlossen werden. Wenn eine Integ- 22 © Copyright IBM Corp. 2011, 2016 ration aktiv ist, verwendet der Integrationsobjektdatensatz die Datensatz-ID, um die verbleibenden Felder im Geschäftsobjekt abzurufen, das in der Datenzuordnung definiert ist. Schritt 6: Angepasste Aufgabe definieren Ichiro fügt die angepasste Sonderaufgabe ein, die Workflowvariablen zum Definieren von Daten verwendet und mit dem Integration-Klassenladeprogrammdatensatz kommuniziert. In dieser Aufgabe übergibt er die Ergebnisse der Aufgabe Query for subset of people als Gruppe von Datensätzen. Schließlich fügt Ichiro die Rückgabevariable hinzu, die benötigt wird, um den Integrationsinstanzdatensatz abzurufen. Der Rückgabewert muss den Namen IntegrationInstance haben. Diese angepasste Aufgabe ist auch mit den folgenden Werten und Verhalten definiert: v Das Feld Klassenname für die angepasste Aufgabe ist auf Integration:com.tririga.custom.integration.Parameter gesetzt. Dieser Klassenname muss verwendet werden, wenn diese Methode implementiert wird. Die Klasse Parameter im Integration-Klassenladeprogrammpfad implementiert die Java-Schnittstellenklasse CustomParamBusinessConnectTask mit der folgenden Signatur: public CustomParamTaskResult execute(TririgaWS client, Map params, long userId, Record[] records) v Das Argument params stellt die zugeordnete Variable IntegrationObject dar, damit der Prozess die Anweisungen enthält, die zum Fortsetzen der Integration erforderlich sind. Das Argument records stellt den Abschnitt "Datensätze" in der angepassten Aufgabe dar, in dem die Datensätze für den Workflowprozess zugeordnet werden. Anstatt das Ereignis für ein einziges Objekt auszulösen, werden zwei Gruppen von Objekten an ein Ereignis übergeben. v Die Klasse Parameter sucht den Integrationsobjektdatensatz in der Variablen IntegrationObject und verarbeitet die Ergebnisse im Argument records, die übergeben werden. Diese Verarbeitung beinhaltet die Ausführung der Abfrage über den Abschnitt "Abfrage abgehender Daten" des Integrationsobjektdatensatzes und die Filterung der übergebenen Datensätze nach Datensatz-IDs. Deshalb werden Daten mit den gängigen Dienstprogrammen übergeben. Allerdings wird der Export nicht mehr durch Alles-oder-Nichts-Abfragen oder durch Auslösen des Ereignisses direkt über die Formularaktion Ausführen gebunden. Ausführung über URLs Nachdem Sie den Integrationsobjektdatensatz erstellt haben, können Sie mit einer URL Parameter von einer externen Anwendung übergeben, um die Aktion Ausführen auszulösen. Mit einer URL können Sie auch die Ergebnisse einer IBM TRIRIGA Report Manager-Abfrage im JSON-Format abrufen. IBM TRIRIGA Application Platform Version 3.3 oder höher ist erforderlich, um ein Ereignis extern mit einer URL auszulösen, die die Authentifizierungsnachweise enthält. Sie können die Authentifizierung auf eine der folgenden Arten angeben: v Fügen Sie dem HTTP-Anforderungsheader im Standardsicherheitsprotokoll der Basisauthentifizierung Werte für die Parameter UserName und Password hinzu. v Fügen Sie die Parameter UserName und Password und deren Werte im HTTPAnforderungsheader hinzu. v Fügen Sie die Parameter UserName und Password und deren Werte als POSTParameter oder als URL-Abfragezeichenfolge der HTTP-Anforderung hinzu. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 23 Aktion "Ausführen" auslösen Wenn Sie die Aktion Ausführen für den Integrationsobjektdatensatz extern über eine URL auslösen möchten, fügen Sie eine Abfragezeichenfolge an die URL an. Die Abfragezeichenfolge enthält die Berechtigungsnachweise und setzt den zusätzlichen Parameter ioName auf den Namen des Integrationsobjektdatensatzes. Rufen Sie beispielsweise die folgende URL auf, um einen Geocode Address-Integrationsobjektdatensatz auszulösen: http://localhost:8001/html/en/default/rest /Integration?user=username&pass=password&ioName=Geocode+Address Wenn die URL die Aktion Ausführen für den Integrationsobjektdatensatz wie erwartet auslöst, wird eine Erfolgsnachricht zurückgegeben. Das Auslösen der Aktion Ausführen für einen Integrationsobjektdatensatz ist ein asynchrones Ereignis. Deshalb ist es nicht möglich, die Ergebnisse des Integrationsprozesses synchron abzurufen. Wenn Sie eine sofortige Rückmeldung der Ergebnisse benötigen, können Sie ein Benachrichtigungsereignis an den Abschluss des Integrationsobjektdatensatzes binden. Dann kann die IBM TRIRIGA-Anwendung Sie benachrichtigen, wenn der Integrationsprozess abgeschlossen ist. Alternativ können diese Informationen von IBM TRIRIGA abgefragt werden. Abfrageergebnisse abrufen Jede in IBM TRIRIGA Report Manager definierte Abfrage kann extern über eine URL ausgeführt werden. Zum Festlegen der Abfrage verwenden Sie die folgenden Parameter: action Erforderlicher Parameter. Dieser Parameter muss auf query gesetzt werden. module Erforderlicher Parameter, wenn kein Fortsetzungstoken verwendet wird. Das Modul für die Abfrage, z. B. triPeople. bo Optionaler Parameter. Das Geschäftsobjekt für die Abfrage, z. B. triPeople. Wenn es mehrere Geschäftsobjekte gibt, geben Sie diesen Parameter nicht an. query Erforderlicher Parameter, wenn kein Fortsetzungstoken verwendet wird. Der Name der Abfrage, z. B. triEmployee - Find. f Optionaler Parameter. Das Format der zurückgegebenen Ergebnisse. Die folgenden Optionen sind verfügbar: ct 24 json Standardformat. Eine minimierte JSON-Zeichenfolge. pjson JSON-Zeichenfolge im Druckformat für bessere Lesbarkeit. xml Minimierte XML-Zeichenfolge. pxml XML-Zeichenfolge im Druckformat für bessere Lesbarkeit. tab Durch Tabulatoren begrenzter Text. Erforderlicher Parameter, wenn der nächste Stapel von Datensätzen angefordert wird. Es wird ein Fortsetzungstoken zurückgegeben, wenn die Anzahl der Abfrageergebnisse den Standardwert von 1000 Datensätzen überschreitet. Wenn Sie versuchen, den nächsten Stapel von Datensätzen abzurufen, müssen Sie diesen Parameter mit dem in der vorherigen Antwort angegebenen Token übergeben. © Copyright IBM Corp. 2011, 2016 Rufen Sie beispielsweise die folgende URL auf, wenn Sie eine Abfrage nach allen Mitarbeitern angeben möchten: http://localhost:8001/html/en/default/rest /Integration?user=username&pass=password&action=query &module=triPeople&bo=triPeople&query=triEmployee+-+Find&f=pjson Ausführung von DataConnect-Prozessen Wenn Sie das IBM TRIRIGA-DataConnect-Schema für eingehende Daten auswählen, kann die Integrationsdefinition zwei Typen von DataConnect-Jobs ausführen. Der Typ "Standard" erstellt einen einzigen Job für das ausgewählte Geschäftsobjekt. Der Typ "Mehrere" lädt mehrere Staging-Tabellen und führt sie als einen einzigen Job aus. Der Typ "Mehrere" setzt eine abhängige Integrationsdefinition im Workflow voraus. Standard Bei der Ausführung der Integrationsdefinition folgt dieser Typ von DataConnect-Job dem folgenden Prozessablauf. 1. Er erstellt aus dem maximalen DC_JOB-Wert eine Jobnummer. 2. Er fügt einen neuen Eintrag mit der neuen Jobnummer, dem Geschäftsobjekt und dem Status 1 (Neu) in die Tabelle DC_JOB ein. 3. Er lädt die Staging-Tabelle mit der Jobnummer, dem Formularnamen, dem Status 2 (Bereit) und der Aktion 4 (Upsert). 4. Er aktualisiert die Tabelle DC_JOB mit dem Status 2 (Bereit). Mehrere Bei der Ausführung der Integrationsdefinition folgt dieser Typ von DataConnect-Job dem folgenden Prozessablauf. 1. Er erstellt aus dem maximalen DC_JOB-Wert eine Jobnummer. 2. Er fügt einen neuen Eintrag mit der neuen Jobnummer, dem Geschäftsobjekt und dem Status 1 (Neu) in die Tabelle DC_JOB ein. 3. Er lädt die Staging-Tabelle mit der Jobnummer, dem Formularnamen, dem Status 2 (Bereit) und der Aktion 4 (Upsert). 4. Er fragt die abhängige Integrationsdefinition (IntegrationObjectDependent) ab und wiederholt die Schritte 1-4 so oft, bis eine Integrationsdefinition keine abhängige Integrationsdefinition mehr hat. 5. Er aktualisiert die Tabelle DC_JOB mit dem Status 2 (Bereit). Fehlerbehandlung Wenn während einer Integration Fehler auftreten, werden die betroffenen Datensätze nicht gespeichert. In der Zusammenfassung der Integrationsinstanz werden die aufgetretenen Fehler angezeigt, und alle fehlerhaften Datensätze werden jeweils durch einen Instanzfehlerdatensatz dargestellt. Ein Instanzfehlerdatensatz enthält eine Darstellung des Instanzdatensatzes, die Sie manuell bearbeiten und erneut senden können. Das Feld Datensatz erneut senden in einem Instanzfehlerdatensatz (triIntegrationInstanceFailure) ist ein Nachrichtenfeld, das die Schlüssel/Wert-Paare enthält, die den zu erstellenden bzw. zu aktualisierenden Datensatz darstellen. Sie können die Daten im Feld Datensatz erneut senden manuell bearbeiten und dann auf die Formularaktion Erneut senden klicken, um den Datensatz erneut zu senden. Wenn ein erneut gesendeter Datensatz erfolgreich verarbeitet wird, treten die folgenden Ereignisse ein: Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 25 v Die Darstellung des fehlerhaften Datensatzes ändert sich von "Fehler" in "Erfolgreich". v Die Texteinträge im Feld Fehlernachricht und das Feld Datensatz erneut senden werden gelöscht. v Die Integrationsinstanzdatensatzzähler (triIntegrationInstance) werden aktualisiert, um die richtigen Werte widerzuspiegeln. Im Einzelnen wird die Anzahl im Feld Erfolgreiche Datensätze um eins erhöht und die Anzahl im Feld Fehlerhafte Datensätze um eins verringert. Wenn der Wert im Feld Fehlerhafte Datensätze null ist, können Sie den Integrationsobjektdatensatz mit der Aktion Abschließen abschließen. Integrationselemente Neben der Definition und Ausführung der Integrationsdefinition gehören abgehende Formate, Objektupgrades und Objektmigrationen zu den gängigen Elementen und Prozessen für Integrationen. Weitere gängige Elemente sind Standardworkflows, Standardabfragen und Standardlisten. Abgehende Formate Für abgehende Dateiintegrationen können Sie das Dateiformat .json, .xml oder .xslt auswählen. Für abgehende HTTP-Post-Integrationen können Sie das PostFormat JSON, XML oder XSLT und Antwortformate auswählen. Dateiexporttypen Zu den Dateiexportformaten gehören flat (Flachdatei), .json, .xml und .xslt. Wenn Sie die Option "flat" für Datei mit Standardtrennzeichen auswählen, wird das Feld Dateiheader verfügbar. HTTP-Post-Typen Zu den HTTP-Post-Formaten gehören Parameter, Abfragezeichenfolge, JSON, XML und XSLT. Die Ergebnisse der abgehenden Abfrage werden in das ausgewählte Format konvertiert. Parameter Jede Zeile wird in Parametername/Wert-Paare konvertiert. Jeder Datensatz wird gesondert gesendet. Es ist keine Stapelübergabe verfügbar. Parameter können auch im Feld Parameter angegeben werden, das nur für diesen HTTP-Post-Typ sichtbar ist. Gültige Werte für dieses Feld sind Name/Wert-Paare im Format Name:Wert. Der Name und der Wert müssen durch einen Doppelpunkt getrennt werden. Sie können mehrere Name/ Wert-Paare in diesem Feld eingeben. Jeder Eintrag muss in einer separaten Zeile angegeben werden. Abfragezeichenfolge Jede Zeile wird in Parametername/Wert-Paare konvertiert, die als Abfragezeichenfolge an die URL angefügt und dann gesendet werden. Obwohl die Daten an die URL angefügt und nicht in den Hauptteil der Anforderung eingeschlossen werden, ist die HTTP-Anforderungsmethode POST und nicht GET. JSON 26 © Copyright IBM Corp. 2011, 2016 Sie können JSON als Post-Typ für das HTTP-Post-Schema oder als Exporttyp für das Dateischema auswählen. Wenn Sie für jeden Datensatz, der von der abgehenden Abfrage zurückgegeben wird, eine gesonderte Anforderung senden möchten, geben Sie den Wert für den Antworttyp an. Die einfachen Antwortparameter müssen den Feldern entsprechen, die in der Antwortzuordnung definiert sind. Wenn Sie alle zurückgegebenen Datensätze in einer einzelnen Stapelübergabe senden möchten, geben Sie keinen Antworttyp an. Die JSON-Struktur hat zwei Objekte: Daten und Header. Das Datenobjekt enthält ein Array von Objekten mit Beschriftungen und Werten aus den Spalten der abgehenden Abfrage und, sofern angegeben, auch die Geschäftsobjekt-ID und die Datensatz-ID. Das folgende Beispiel veranschaulicht die JSON-Standardstruktur: { "data": [ { “[column_label]”:”[column_value]”, "boId": 10002100, "recId": 2999294 }, ... ], "header": [ "[column_label]", ... ] } XML und XSLT Sie können XML als Post-Typ für das HTTP-Post-Schema oder als Exporttyp für das Dateischema auswählen. Wenn Sie für jeden Datensatz, der von der abgehenden Abfrage zurückgegeben wird, eine gesonderte Anforderung senden möchten, geben Sie den Wert für den Antworttyp an. Die einfachen Antwortparameter müssen den Feldern entsprechen, die in der Antwortzuordnung definiert sind. Wenn Sie alle zurückgegebenen Datensätze in einer einzelnen Stapelübergabe senden möchten, geben Sie keinen Antworttyp an. XML-Standardstruktur Die XML-Struktur enthält drei Knoten für jede Spalte der abgehenden Abfrage: field, label und value. Das folgende Beispiel veranschaulicht die XML-Standardstruktur: <query> <continueToken/> <results total="13"> <result recordId="11430080" associatedRecordId="null" boId="106402"> <columns> <column> <field>triIdTX</field> <label>HR_ID</label> <value>1000000</value> </column> ... </columns> </result> ... </results> </query> Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 27 Für Datumswerte enthält die abgehende Abfrage die in der Datenbank gespeicherten unaufbereiteten Werte und die formatierten Anzeigewerte, die dem Benutzer angezeigt werden. Der Knoten displayValue wird den Abfrageergebnissen hinzugefügt. Das folgende Beispiel veranschaulicht die XML-Standardstruktur: <column> <field>Date</field> <label><![CDATA[Date]]></label> <value><![CDATA[1359964800000]]></value> <displayValue><![CDATA[02/04/2014]]></displayValue> </column> <column> <field>DateTime</field> <label><![CDATA[Date_Time]]></label> <value><![CDATA[1360009800000]]></value> <displayValue><![CDATA[02/04/2014 12:30:00]]></displayValue> </column> Bezeichnungen als Knoten Wenn Sie die Option Abfragebezeichnung als Element verwenden auswählen, ändert sich die XML-Standardstruktur. Die label- und value-Knoten werden unter Verwendung des label-Namens als value-Knoten zusammengeführt. Das folgende Beispiel veranschaulicht die XML-Struktur: <query> <continueToken/> <results total="13"> <result recordId="11430080" associatedRecordId="null" boId="106402"> <columns> <column> <field>triIdTX</field> <HR_ID>1000000</HR_ID> </column> ... </columns> </result> ... </results> </query> Für Datumswerte wird der zusammengeführte Knoten Name_display den Abfrageergebnissen hinzugefügt. Das folgende Beispiel veranschaulicht die XML-Struktur: <column> <field>Date</field> <Date><![CDATA[1359964800000]]></Date> <Date_display><![CDATA[02/04/2014]]></Date_display> </column> <column> <field>DateTime</field> <Date_Time><![CDATA[1360009800000]]></Date_Time> <Date_Time_display><![CDATA[02/04/2014 12:30:00]]> </Date_Time_display> </column> XSLT-Transformationen Wenn Sie eine XSLT-Transformation auf die XML-Struktur anwenden, können Sie das Binärfeld XSLT zum Speichern des XSLT-Style-Sheets verwenden. Dieses Feld ist nicht erforderlich. Sie können die XML-Struktur auch mit oder ohne die Option Abfragebezeichnung als Element verwenden transformieren. 28 © Copyright IBM Corp. 2011, 2016 HTTP-Antworttypen Zu den HTTP-Antworttypen gehören flat, JSON und XML. Die einfachen Antwortparameter müssen den Feldern entsprechen, die in der Antwortzuordnung definiert sind. Wenn Sie die Option Als Stapel senden auswählen, geben Sie keinen Wert für Antworttyp an. Nach Abschluss des Integrationsprozesses werden die von der Antwort betroffenen Datensätze auf der Registerkarte Zuordnungen der Integrationsdefinition zusammen mit der Zuordnungszeichenfolge "Sourced" aufgelistet. Flat Ruft die HTTP-Antwort im Zeichenfolgeformat ab. Wenn die Antwort beispielsweise "Erfolg" oder "Fehler" ist, können Sie diese Zeichenfolge einem Feld zuordnen, das als Entscheidungspunkt in einem Nachverarbeitungsworkflow verwendet werden kann. JSON Ruft die HTTP-Antwort im JSON-Format ab. In der Antwortzuordnung definieren Sie das Attribut Extern mit der JSONPath-Zeichenfolge. Sie dürfen nur einfache Antwortdefinitionen verwenden. Wenn das JSON-Element, das Sie zuordnen möchten, ein Array ist, müssen Sie die Indexnummer dieses Arrays angeben. candidates[0].location.x gibt beispielsweise -12819744.7565 in der folgenden JSON-Struktur zurück: { "spatialReference" : { "wkid" : 102100 }, "candidates" : [ { "address" : "6720 Via Austi Pky, Las Vegas, NV, 89119", "location" : { "x" : -12819744.7565, "y" : 4309920.3012000024 }, "score" : 100, "attributes" : { } }, { "address" : "6721 Via Austi Pky, Las Vegas, NV, 89119", "location" : { "x" : -12819812.309700001, "y" : 4309994.186999999 }, "score" : 79, "attributes" : { } } ] } XML Ruft die HTTP-Antwort im XML-Format ab. In der Antwortzuordnung definieren Sie das Attribut Extern mit der XPath-Zeichenfolge. Sie dürfen nur einfache Antwortdefinitionen verwenden. Wenn das XML-Element, das Sie zuordnen möchten, ein Array ist, Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 29 müssen Sie die Indexnummer dieses Arrays angeben. //root/candidate/ location[2]/x gibt beispielsweise 5 in der folgenden XML-Struktur zurück: <root> <candidate> <location> <x>1</x> <y>2</y> </location> <location> <x>5</x> <y>6</y> </location> </candidate> </root> Das XML-Format kann auch mehrere Datensätze in der Antwort abrufen und aktualisieren. In der Antwortzuordnung, in der Sie das Attribut Extern mit der XPath-Zeichenfolge definieren, müssen Sie das wiederholbare XML-Element mit dem Token [i] darstellen. Im folgenden Beispiel setzen Sie den XPath auf //result[i]/@recordId, um den XPath dem Attribut recordId in der XML-Struktur zuzuordnen. Um den XPath dem Knoten Name zuzuordnen, setzen Sie den XPath auf //result[i]/columns/column/ Name. Sie können auch das Attribut isKey (Schlüssel) in der Zuordnung definieren, um den Datensatz zu aktualisieren. <?xml version="1.0" encoding="UTF-8"?> <query> <continueToken/> <results total="6"> <result recordId="11464082" associatedRecordId="null" boId="10025526"> <columns> <column> <field>triNameTX</field> <Name><![CDATA[Default Map]]></Name> <Name_display><![CDATA[Default Map]]></Name_display> </column> <column> <field>triIdTX</field> <ID><![CDATA[001]]></ID> <ID_display><![CDATA[001]]></ID_display> </column> </columns> </result> <result recordId="11464531" associatedRecordId="null" boId="10025526"> <columns> <column> <field>triNameTX</field> <Name><![CDATA[SecondMap]]></Name> <Name_display><![CDATA[SecondMap]]></Name_display> </column> <column> <field>triIdTX</field> <ID><![CDATA[002]]></ID> <ID_display><![CDATA[002]]></ID_display> </column> </columns> </result> ... Objektupgrades Sobald ein neues IBM TRIRIGA Application Platform-Installationsprogramm verfügbar ist, können Sie angeben, ob das Installationsprogramm während des Plattformupgrades ein Upgrade des TRIRIGA-Integrationsobjekts durchführen soll. 30 © Copyright IBM Corp. 2011, 2016 Wenn Sie nicht möchten, dass das Installationsprogramm ein Upgrade des TRIRIGA-Integrationsobjekts durchführt, erstellen Sie einen Integrationsobjektdatensatz mit dem Namen IGNORE_UPGRADE. Führen Sie diesen Datensatz nicht aus. Der Datensatz muss nur in der vorhandenen Plattforminstallation existieren. Wenn das Installationsprogramm anschließend ausgeführt wird, führt es auch dann kein Upgrade des TRIRIGA-Integrationsobjekts durch, wenn die Buildversion des Installationsprogramms neuer ist als die momentan installierte Plattformversion. Wenn Sie diesen IGNORE_UPGRADE-Datensatz nicht erstellen, führt das Installationsprogramm ein Upgrade des TRIRIGA-Integrationsobjekts durch, wenn die Buildversion des Installationsprogramms neuer ist als die momentan installierte Plattformversion. Objektmigrationen Nach der Durchführung einer Objektmigration müssen Sie vor der Verwendung eines Integrationsobjektdatensatzes in der neuen Umgebung einen beliebigen Integrationsobjektdatensatz öffnen und die Aktion Neu zuordnen ausführen. Die Aktion Neu zuordnen aktualisiert alle IDs, die in Ihren Datenzuordnungen und Antwortzuordnungen gespeichert sind. Diese Zuordnungen enthalten IDs für Module, Geschäftsobjekte, Formulare und intelligente Datensatzdaten. Sie müssen die Aktion Neu zuordnen ausführen, um sicherzustellen, dass die IDs für die neue Umgebung aktualisiert werden. Objektelemente Das Modul triIntegration enthält mehrere Geschäftsobjekte, wie z. B. das TRIRIGA-Integrationsobjekt. Außerdem erfordert der Integrationsobjektdatensatz die Verwendung mehrerer Klassenladeprogrammelemente. Das Modul triIntegration enthält die folgenden Geschäftsobjekte: triIntegration Das TRIRIGA-Integrationsobjekt ist das primäre Geschäftsobjekt, das die Integration von IBM TRIRIGA und externen Systemen definiert. Sie erstellen Integrationsdefinitionen oder Integrationsobjektdatensätze aus diesem TRIRIGA-Integrationsobjekt. triDataSource Das Geschäftsobjekt für Datenquellen enthält die Eigenschafteneinstellungen, die die Verbindung zu einer Datenbank definieren. Dieses Objekt wird als intelligenter Abschnitt mit einem einzigen Datensatz im Integrationsobjektdatensatz referenziert. Diese Referenzierung ermöglicht die Wiederverwendung der Datenquellendefinitionen in mehreren Integrationsdefinitionen. triIntegrationInstance Das Geschäftsobjekt für Integrationsinstanzen enthält die Details zu einer bestimmten Instanz einer Integrationsausführung. Dieses Objekt enthält die Zähler, die Dauer der Ausführung, eine Sammlung von Fehlernachrichten, sofern vorhanden, und einen Abfrageabschnitt mit Details zu jedem fehlerhaften Datensatz. Dieses Objekt wird Datensätzen zugeordnet, die von der Antwort betroffen sind. Es wird im Abschnitt "Ausführungsprotokoll" des Integrationsobjektdatensatzes referenziert. triIntegrationInstanceFailure Das Geschäftsobjekt für Integrationsinstanzfehler enthält die Details zu einem einzelnen Datensatz, dessen Verarbeitung bei einer eingehenden IntegKapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 31 ration fehlgeschlagen ist. Dieses Objekt enthält die Fehlernachricht zu dem Fehler und eine vereinfachte Darstellung des gesendeten Datensatzes, die manuell bearbeitet und erneut gesendet werden kann. Der TRIRIGA-Klassenladeprogrammdatensatz mit dem Namen Integration wird vom Integrationsobjektdatensatz benötigt. Dieser Integration-Klassenladeprogrammdatensatz enthält die folgenden Elemente in seinem Abfrageabschnitt "Ressourcendateien": jtds-1.2.5.jar Die JDTS-JAR-Datei (Java Device Test Suite) ist der Datenbanktreiber für Microsoft SQL Server. Obwohl der Oracle-JDBC-Treiber für Oracle Database mit IBM TRIRIGA geliefert wird, enthält IBM TRIRIGA keinen Datenbanktreiber für Microsoft SQL Server. Wenn Sie eine Verbindung zu Microsoft SQL Server herstellen, müssen Sie einen Microsoft SQL Server-Treiber wie jtds-1.2.5.jar im Abfrageabschnitt "Ressourcendateien" des Integration-Klassenladeprogrammdatensatzes hinzufügen. TRIRIGAIntegration.jar Die .jar-Datei für die TRIRIGA-Integration enthält alle Java-Klassen, die von den TRIRIGA-Integrationsobjektkomponenten verwendet werden. Die Datei enthält workflowbezogene Einstiegspunkte für angepasste Aufgaben und eine Übertragungsebene, die von den Elementen in der Datei TRIRIGAIntegration_Assets.zip verwendet wird. TRIRIGAIntegration_Assets.zip Die .zip-Datei mit den TRIRIGA-Integrationsassets enthält alle .html-, .css-, JavaScript- und Bilddateien, die von der Datenzuordnung für eingehende Integrationen verwendet werden. JavaScript kommuniziert mit der Java-API von IBM TRIRIGA Connector for Business Applications über URIbasierte Servlet-Proxy-Handles. Die serverseitigen Elemente sind in der Datei TRIRIGAIntegration.jar enthalten. Objektversionen Wenn Sie die Version des in Ihrer IBM TRIRIGA-Umgebung installierten TRIRIGAIntegrationsobjekts bestimmen möchten, können Sie die folgende Webadresse aufrufen: http://[localhost:8001/context]/html/en/default/rest/Integration. Das angezeigte Ergebnis enthält das Builddatum, die Buildnummer und die Versionsnummer des Integrationsobjekts, das Sie momentan ausführen. Standardworkflows Im Lieferumfang des TRIRIGA-Integrationsobjekts sind mehrere IBM TRIRIGAWorkflows enthalten. Die folgenden Workflows werden vom Integrationsobjektdatensatz oder dessen unterstützenden Datensätzen ausgelöst. triIntegration - Execute Dieser asynchrone Workflow wird ausgelöst, wenn der Benutzer die Aktion Ausführen auswählt. Dieser Workflow ist der primäre Workflow, der die Integration zwischen IBM TRIRIGA und externen Systemen unterstützt. Dieser Workflow steuert den Datensatzstatus, der im Formular angezeigt wird. Die Aufgabe Trigger Integration ist eine angepasste Aufgabe, die Integration:com.tririga.custom.integration.Integration aufruft, und 32 © Copyright IBM Corp. 2011, 2016 der primäre Einstiegspunkt für alle Integrationsobjektdatensätze. Die Informationen zu den während der Integration auszuführenden Prozessen werden im Integrationsobjektdatensatz definiert und über die Datensatz-ID an die angepasste Aufgabe übergeben. Der Standardworkflow enthält die folgenden Workflowaufgaben: v Startaufgabe v Aufgabe zum Ändern von Datensätzen mit dem Namen Mark Status as Processing v Angepasste Aufgabe mit dem Namen Trigger Integration v Schalteraufgabe – Wenn die Schalterbedingung (Switch) wahr (true) ist, werden die folgenden Aufgaben ausgeführt: - Aufgabe zum Auslösen einer Aktion - Aufgabe zum Ändern von Datensätzen mit dem Namen Mark Status as Ready – Wenn die Schalterbedingung (Switch) falsch (false) ist, werden die folgenden Aufgaben ausgeführt: - Aufgabe zum Ändern von Datensätzen mit dem Namen Mark Status as Failed v Endaufgabe triIntegration - Generate SQL for Table Dieser synchrone Workflow wird über die Aktion im Datenbankabschnitt eines Integrationsobjektdatensatzes ausgelöst, um die SQL für Ihre StagingTabellen zu generieren. triIntegration - Generate Test Data Dieser synchrone Workflow wird über die Aktion im Datenbankabschnitt eines Integrationsobjektdatensatzes ausgelöst, um zufällige Testdaten in Ihren Staging-Tabellen zu generieren. Diese Testdaten können für Funktionstests oder Belastungstests verwendet werden. triIntegration - HideShow Data Sections Dieser synchrone Workflow wird beim anfänglichen Laden eines neuen Integrationsobjektdatensatzes und über verschiedene Formularelemente wie einen OnChange-Workflow für eine Feldaktion ausgelöst. Dieser Workflow blendet die Formularelemente entsprechend der von Ihnen definierten Integration bei Bedarf ein und aus. triIntegration - PreLoad Dieser synchrone Workflow wird aufgerufen, wenn ein neuer Integrationsobjektdatensatz geöffnet wird. Dieser Workflow ruft dann die Workflows triIntegration – ResetMetaData und triIntegration – HideShow Data Sections auf. triIntegration - Reset MetaData Dieser synchrone Workflow setzt die Formularelemente zurück, die abgewählt werden. Dieser Workflow wird vom Workflow triIntegration – PreLoad aufgerufen. triIntegration – Resubmit Dieser asynchrone Workflow wird ausgelöst, wenn Sie einen fehlerhaften Datensatz über den Instanzfehlerdatensatz (triIntegrationInstanceFailure) erneut senden. Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 33 triIntegration - Test DB Connection Dieser synchrone Workflow wird über die Aktion im Datenbankabschnitt eines Integrationsobjektdatensatzes ausgelöst, um select count(1) from [Tabellenname] in der definierten Datenbank aufzurufen. Dieser Aufruf prüft, ob die Integrationsdefinition SQL-Befehle übertragen und in dieser Datenbank ausführen kann. triIntegration - Test File Access Dieser synchrone Workflow wird über die Abschnittsaktion "Datei" eines Integrationsobjektdatensatzes ausgelöst, um die Erstellungs-, Abruf-, Aktualisierungs- und Löschberechtigungen für die angegebene Dateiposition zu prüfen. triDataSource - Reset Metadata Dieser asynchrone Workflow setzt den Datenquellendatensatz (triDataSource) zurück. triDataSource - Test DB Connection Dieser synchrone Workflow wird vom Datenquellendatensatz (triDataSource) ausgelöst, um select count(1) from [Tabellenname] in der definierten Datenbank aufzurufen. Dieser Aufruf prüft, ob die Datenquellendefinition SQL-Befehle übertragen und in dieser Datenbank ausführen kann. Standardabfragen Im Lieferumfang des TRIRIGA-Integrationsobjekts sind mehrere IBM TRIRIGAAbfragen enthalten. Die folgenden Anwendungsbereiche und entsprechenden Abfragen sind im Modul triIntegration enthalten: Feld Name der Datenquelle triDatasource - getIntegrationObject datasource Abschnitt Ausführungsprotokoll triIntegration - get Instances Abschnitt Failures triIntegrationFailures - Get all failures Feld Abhängiges Integrationsobjekt Manager Default - Integration Objects Portal Eigene Berichte triIntegration - getIntegrationObject Standardlisten Im Lieferumfang des TRIRIGA-Integrationsobjekts sind mehrere IBM TRIRIGAListen enthalten. Die folgenden Felder und entsprechenden Listen sind im Modul triIntegration enthalten: DataConnect-Typ triDataConnectTypeLI Name des Datenbanktreibers triDriverNameLI Begrenzer triFileDelimiterLI 34 © Copyright IBM Corp. 2011, 2016 Richtung triIntegrationDirectionLI Exporttyp triFileExportTypeLI Integrationstyp triIntegrationTypeLI Post-Typ triHttpPostTypeLI Kapitel 2. Daten mit dem TRIRIGA-Integrationsobjekt integrieren 35 36 © Copyright IBM Corp. 2011, 2016 Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren Sie können Daten aus der IBM TRIRIGA-Datenbank und Daten von einem EsriArcGIS-Server abrufen und diese Daten dann in GIS-Karten anzeigen. Die GIS-Karten können in Portalabschnitten und Formularregisterkarten enthalten sein. Übersicht über GIS-Karten Wenn Sie Ihren IBM TRIRIGA-Portalen und -Formularen Karten hinzufügen, können Benutzer Daten mithilfe von Features, die Sie anpassen können, um das Verständnis der Daten zu verbessern, in grafischer Form anzeigen. Wenn Sie Karten in der IBM TRIRIGA-Anwendung anzeigen möchten, müssen Sie einen GIS-Kartendatensatz für jede Karte erstellen und die Position Ihres GIS-Kartenservers angeben. Ein geografisches Informationssystem (GIS) ist ein System für die Erfassung, Speicherung, Analyse und Verwaltung von Daten und zugehörigen Attributen mit räumlichem Bezug. Im strengsten Sinne handelt es sich um ein Informationssystem, das in der Lage ist, geografisch referenzierte Informationen zu integrieren, zu speichern, zu bearbeiten, zu analysieren, gemeinsam zu nutzen und anzuzeigen. Mit einem GIS können Benutzer interaktive Abfragen erstellen, räumliche Daten analysieren, Daten bearbeiten, Karten integrieren und die Ergebnisse dieser Aufgaben darstellen. GIS-Technologie wird für das Ressourcenmanagement, das Asset-Management, die Bewertung ökologischer Auswirkungen, Städteplanung, Vertrieb, Marketing, Logistik und viele andere Aktivitäten verwendet. Mithilfe eines GIS können Facility-Manager beispielsweise ohne großen Aufwand die Auswirkungen einer Naturkatastrophe auf Facility-Assets bewerten. Ein GIS kann auch verwendet werden, um einen Standort für neue Geschäfte zu suchen, um einen bisher unterversorgten Markt zu nutzen. Esri-Datenservices und IBM TRIRIGA-Tools Zum Anzeigen von GIS-Karten in IBM TRIRIGA-Formularen benötigen Sie EsriDatenservices und IBM TRIRIGA-Tools. In der folgenden Liste sind die Services und Tools aufgeführt, die die Anzeige von GIS-Karten in IBM TRIRIGA-Formularen ermöglichen. Esri-Datenservices v Geografie- und Geodaten (Datenservices). Das IBM TRIRIGA-System ruft diese Daten über REST-API-Services auf Esri-Servern ab. v Eigentliche Kartenansicht. Der ArcGIS-Server gibt unabhängig davon, ob die Services online angeboten oder auf einem proprietären Server gehostet sind, die Karten wieder und führt die Geoverarbeitung durch. v Geoverarbeitung für Fahrzeit oder Entfernungsradien. Die Geoverarbeitung wird vom ArcGIS-Server bereitgestellt. v Geocoding für die Erfassung der Breitengrad- und Längengradkoordinaten adressierbarer Objekte oder IDs, die die Features darstellen. Das Geocoding wird vom ArcGIS-Server bereitgestellt. © Copyright IBM Corp. 2011, 2016 37 v Esri-JavaScript-API. Die API stellt die Anzeigefunktion für die Bereitstellung von Daten vom Server und die Unterstützung der Basisinteraktion mit den Kartendaten bereit. Die Standardkonfiguration wird im IBM TRIRIGA-GIS-Kartenobjekt definiert. IBM TRIRIGA-Tools v Anfangssatz von Gebäudedaten, der zum Abfragen des Esri-ArcGIS-Servers verwendet wird. v ClassLoader-Objekt, das die Logik für die Bereitstellung der Esri-JavaScript-Anzeigefunktion enthält. v Tools für die Konfiguration der Basiskarten, Ebenen, räumlichen Referenzdaten, Widgets und Abfragen, die in den wiedergegebenen GIS-Kartenbereichen in IBM TRIRIGA verwendet werden. Esri bietet mehrere Datenservices an, einschließlich des Datenservice "Räumliche Abfrage". Diese Services werden von IBM TRIRIGA verwendet, um die geografischen Bereiche zu bestimmen, die der Benutzer in der aktuellen Kartenansicht sieht. Eine GIS-Karte kann in einem IBM TRIRIGA-Portalabschnitt oder auf einer Formularregisterkarte angezeigt werden. Dieselbe voll ausgestattete Funktion ist jedes Mal verfügbar, wenn eine Karte angezeigt wird. Die Versionen der IBM TRIRIGA Application Platform- und IBM TRIRIGA-Anwendungen, die die GIS-Features unterstützen, sind in der IBM TRIRIGA Application Platform-Kompatibilitätsmatrix (https://www.ibm.com/developerworks/ mydeveloperworks/wikis/home?lang=en#/wiki/IBM+TRIRIGA1/page/ Support+Matrix) definiert. Esri-Integrationspunkte Zum Anzeigen von Karten kommuniziert IBM TRIRIGA mit einem Zuordnungsservice, der vom Esri-ArcGIS-Server bereitgestellt wird. IBM TRIRIGA kommuniziert über Java™, JavaScript und HTML mit dem Esri-ArcGIS-Server. Die Esri-JavaScript-API setzt die Serviceaufrufe über ihr natives HTTP-Serviceprotokoll an den Esri-ArcGIS-Server und an IBM TRIRIGA ab. Für IBM TRIRIGA-Datensätze bereitgestellte Aktionen, wie z. B. die Aktion zum Geocodieren von Adressen, führen einen Integrationsobjektdatensatz über einen Workflow aus, um einen Aufruf an den Service abzusetzen. Die folgenden Felder in jedem bereitgestellten Lokationsgeschäftsobjekt unterstützen diesen Integrationsobjektdatensatz: GIS-Breitengrad (triGisLatitudeNU) Enthält den Breitengrad des Geocodepunkts. GIS-Längengrad (triGisLongitudeNU) Enthält den Längengrad des Geocodepunkts. Esri-Authentifizierungsnachweise Damit die Aktion zum Geocodieren von Adressen in den Lokationsdatensätzen und -formularen diese Längen- und Breitengradwerte ordnungsgemäß abrufen und speichern kann, sind Esri-OAuth-Berechtigungsnachweise erforderlich. Diese Berechtigungsnachweise können auch für den Zugriff auf und die Verbindungsherstellung zu gesicherten Onlinebasiskarten und -ebenen verwendet werden, die zur 38 © Copyright IBM Corp. 2011, 2016 GIS-Laufzeit von Esri-Services gehostet werden. Ihre Esri-OAuth-Berechtigungsnachweise müssen mit einer der folgenden Methoden bereitgestellt werden. Esri-Authentifizierungsdatensatz Wenn Sie diese Authentifizierungsmethode verwenden, klicken Sie auf Tools > Systemkonfiguration > GIS > GIS Esri Authentication. Sie müssen Ihre Esri-OAuth-Berechtigungsnachweise im Esri-Authentifizierungsdatensatz angeben: client_id Enthält den tatsächlichen Wert Ihrer Client-ID. client_secret Enthält den tatsächlichen Wert Ihres geheimen Clientschlüssels. Zum Überprüfen Ihrer Werte wählen Sie Validate Credentials aus. Integrationsobjektdatensatz Wenn Sie diese Integrationsobjektmethode verwenden, klicken Sie auf Tools > Systemkonfiguration > Integration > Integrationsobjekt. Sie müssen Ihre Esri-OAuth-Berechtigungsnachweise im Abschnitt "Http Post" des Integrationsobjektdatensatzes Geocode Address - Esri - Authentication angeben: Benutzernamensparameter (triPostUserNameParameterTX) Enthält den Parameterwert von client_id. UserName (triPostUserNameTX) Enthält den tatsächlichen Wert Ihrer Client-ID. Kennwortparameter (triPostPasswordParameterTX) Enthält den Parameterwert von client_secret. Password (triPostPasswordPA) Enthält den tatsächlichen Wert Ihres geheimen Clientschlüssels. Ihre Berechtigungsnachweise (Client-ID und geheimer Schlüssel) sind für die Generierung des Esri-Authentifizierungstokens in der Abfragezeichenfolge der HTTPAnforderung erforderlich. Weitere Informationen finden Sie unter Accessing ArcGIS Online Services (https://developers.arcgis.com/authentication/accessingarcgis-online-services/) und unter Authenticate a request to the World Geocoding Service (https://developers.arcgis.com/rest/geocode/api-reference/geocoding-authenticate-a-request.htm). Sie definieren die URLs und Ports, die für die Erstellung der GIS-Karte verwendet werden. Sie definieren Basiskarten, Ebenen und Widget-Services wie den Geometrieservice. Die einzige Ausnahme ist die Esri-JavaScript-API aus dem Esri-CDN. Die Offline-API ist eigenständig und kann hinter der Firewall verwendet werden. Weitere Informationen zu den mit dieser API verwendeten Services finden Sie auf der Website von Esri (www.esri.com). Karten in GIS-Portalabschnitten Ein GIS-Portalabschnitt verweist auf eine anwendungsinterne Webseite, die eine GIS-Karte enthält. Die GIS-Karte ist einem GIS-Kartendatensatz zugeordnet, der die wiederzugebenden Daten definiert. Die GIS-Portalabschnitte mit den anwendungsinternen Webseiten enthalten die folgenden Portalabschnitte: v triURL - GIS - Environmental Manager/Planner oder Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren 39 v triURL - GIS - Environmental Manager/Planner (US Govt) Wenn sich ein Benutzer an der Anwendung anmeldet, wird die URL aufgerufen, um die Webseite zu laden, die die Karte enthält. Basierend auf der im Parameter URL definierten Karte wird eine Liste ausführbarer Berichte zurückgegeben. Der erste Bericht in dieser Liste wird ausgeführt und die Ergebnisse werden an die Karte zurückgegeben. Berichte können Metrikabfragen oder Standardabfragen sein. Die Berichte definieren, welche Informationen ein Benutzer in den Blasen für die Lokationen oder Features sieht. Die Abfragen füllen auch die Datentabelle in der Anzeigefunktion. Es gibt eine 1:1-Korrelation zwischen den Blasen in der Karte und den Daten in der Tabelle. Die Tabelle enthält dieselben Felder wie die Blase, weil die Quellendaten für beide in demselben Bericht enthalten sind. Mit Kartenwidgets kann der Benutzer die Karte schwenken, zoomen oder Lokationen suchen. Außerdem kann der Benutzer Features auf der Karte erstellen und bearbeiten und diese Features einem IBM TRIRIGA-Objekt zuordnen. Die Nadeln auf der Karte zeigen die Lokationen, die von der Abfrage zurückgegeben werden. Jede Lokation hat eine Blase (Kurzinfo), in der Informationen zur Lokation angezeigt werden. Wenn die Abfrage eine Metrikabfrage ist, werden in den Sprechblasen die Metrikergebnisse angezeigt. Die Farben der Nadelsymbole für die Lokationen entsprechen den Schwellenwerten, die von den Metrikergebnissen dargestellt werden. Wenn die Abfrage eine Standardabfrage ist, sind die Nadelsymbole für die Lokationen blau. Die Standardfarben sind blau, rot, grün und gelb. Sie können Ihre eigenen Symbole für die Darstellung der Lokationsnadeln auf der Karte verwenden. Die Abfrage, die der Karte in einem Portalabschnitt zugeordnet ist, wirkt sich nicht auf andere Daten im Portal aus und reagiert nicht auf diese. GIS ist eine eigenständige Anwendung innerhalb eines Portalabschnitts. Ein GIS-Abschnitt enthält eine Schaltfläche Vorgaben speichern. Dieses Feature speichert den aktuellen Kartenbereich und die aktuelle Kartenansicht. Wenn sich der Benutzer das nächste Mal anmeldet, überschreiben die gespeicherten Einstellungen die Standardeinstellungen im URL-Parameter der Portalabschnitts-URL. Wenn der Benutzer keine Vorgaben gespeichert hat, wird im Abschnitt die Standardansicht angezeigt, die in der URL-Parameterzeichenfolge definiert ist. Die Benutzervorgaben werden pro Benutzer pro Karte gespeichert. Wenn der Benutzer in eine andere Karte wechselt, werden die Vorgaben für die ursprüngliche Karte nicht auf die zweite Karte angewendet. Stattdessen wird die zweite Karte mit den Standardeinstellungen für diese Karte angezeigt, sofern der Benutzer keine Vorgaben für die zweite Karte gespeichert hat. Karten auf GIS-Formularregisterkarten Eine GIS-Registerkarte enthält eine Karte, auf der die Lokation des Datensatzes mit einem Nadelsymbol markiert ist. Wenn ein Benutzer die entsprechenden Lizenzen besitzt, enthalten die mitgelieferten Lokations-, Geografie- und Immobilentransaktionsplanformulare eine Registerkarte "GIS". Der Kartenbereich der Karte auf der Registerkarte "GIS" ist der lokalisierte Bereich. Die Standardabfrage gibt die Karte wieder. Die Abfrage wird in der URL als Parameterzeichenfolge angegeben, die die auszuführenden Abfragen festlegt. Die URL für die Registerkarte "GIS" wird im Formularbuilder definiert. 40 © Copyright IBM Corp. 2011, 2016 Übersicht über GIS-Kartenelemente Wenn Sie eine GIS-Kartendefinition definieren, müssen Sie die verschiedenen Kartenelemente konfigurieren. Zu Kartenelementen gehören Abmessungen, Abfragen, Basiskarten, Ebenen, Symbole und Widgets. GIS-Kartendatensätze Wenn Sie eine neue GIS-Kartendefinition definieren möchten, müssen Sie aus dem GIS-Kartengeschäftsobjekt einen GIS-Kartendatensatz erstellen. Vorhandene GISKartendatensätze werden unter Tools > Systemkonfiguration > GIS > GIS-Karte aufgelistet. Abmessungen Die anfänglichen Abmessungen beziehen sich auf die Flächenreferenz und die Begrenzung der Karte, wenn diese zum ersten Mal in einem Portalabschnitt oder auf einer Formularregisterkarte geöffnet wird. Wenn die WKID (Well-Known ID) für die Basiskarten und Ebenen nicht geeignet ist, ist Ihr Kartenabschnitt leer und enthält keine Karte. Zwei Beispiele für WKIDWerte sind 4326 und 102100. Weitere Informationen finden Sie in Beschreibungen der WKID-Werte für das geografische Koordinatensystem (resources.arcgis.com/en/help/rest/apiref/gcs.html) und das projizierte Koordinatensystem (resources.arcgis.com/en/help/rest/apiref/ pcs.html). Abfragen Die Abfragen definieren die IBM TRIRIGA-Gebäudelokationsdaten, die in der Karte angezeigt werden. Alle Abfragen, die von IBM TRIRIGA Report Manager unterstützt werden, können auf die Karte angewendet werden. Es werden Standardabfragen und Metrikabfragen unterstützt. Standardmäßig wird die Abfrage mit dem niedrigsten Wert im Feld Anzeigereihenfolge angezeigt. Zur Auswahl einer anderen Abfrage können Sie auf das Register Details einblenden oberhalb der Karte klicken und eine Abfrage in der Liste auswählen. In GIS-Abschnitten werden die Daten einer Metrikabfrage anhand der geografischen Daten gefiltert und gruppiert, die in der aktuellen Kartenansicht angezeigt werden. Abfrage müssen Anzeigespalten mit den Beschriftungen Längengrad und Breitengrad enthalten. Die Felder Breitengrad und Längengrad bestimmen die Position des Elements auf der Karte genau. Für Metrikabfragen muss die Struktur der Abfrage tabellarisch sein. Damit bei Metrikabfragen ein Datensatzlink im Mouse-over-Dialog eine PIN angezeigt wird, muss das Feld triRecordSY als eine der Berichtsspalten eingeschlossen werden. Für Standardabfragen ist dieser Schritt nicht erforderlich, das der Datensatzlink standardmäßig im Mouse-over-Dialog einer PIN angezeigt wird. Wenn die Ergebnisse der Abfrage in mehreren Kartensystemen enthalten sind, führt die GIS-Software die Konvertierung durch und zeigt die Ergebnisse in der Basiskarte an. Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren 41 Wenn eine Abfrage ausgeführt wird und der Abfragefilter die Felder triGisLatitudeNU und triGisLongitudeNU enthält, fügt die Esri-JavaScript-Anzeigefunktion der Abfrage automatisch Filter hinzu. Die Filter begrenzen die Ergebnisse auf die Maße der Karte. Die Feldnamen triGisLatitudeNU und triGisLongitudeNU müssen verwendet werden. Andernfalls können keine weiteren Filter hinzugefügt werden. Eine Karte kann maximal 1000 Datensätze zurückgeben. Basiskarten Die Basiskarten identifizieren die Karten, die zur Anzeige verfügbar sind. Standardmäßig wird die Basiskarte mit dem niedrigsten Wert im Feld Anzeigereihenfolge angezeigt. Sie können eine andere Basiskarte auswählen, indem Sie auf das Register Details einblenden oberhalb der Karte klicken und in der Liste Basiskarte wechseln eine Karte auswählen. Auf der Registerkarte Details einblenden werden außerdem Informationen zu der Karte angezeigt, die vom Kartenanbieter bereitgestellt wird. Der Basiskartendatensatz erfordert, dass Sie die REST-URL des Esri-Servers angeben, der den Kartenservice bereitstellt. Wenn die URL korrekt und gültig ist, wird die Beschreibung des Basiskartenservice, die vom Esri-Server bereitgestellt wird, unten im Formular "GIS-Basiskarte" angezeigt. Wenn anstelle der Beschreibung des Basiskartenservice nichts oder ein Fehler angezeigt wird, vergewissern Sie sich, dass Ihr Esri-Server den Basiskartenservice mit REST-Endpunkten aktiviert hat. Sie können das Symbol ändern, das angezeigt wird, wenn die Basiskarte in der Liste Basiskarte wechseln auf der Registerkarte Details anzeigen der Karte angezeigt wird. Wenn das Feld Piktogramm-URL auf ein gültiges Bild verweist, wird dieses Bild in der Liste Basiskarte wechseln angezeigt. Wenn Sie keinen Wert angeben, erscheint das Standardbild. Ebenen Die Ebenen identifizieren die Legendenebenen, die zusätzlich zur Basiskarte zur Anzeige verfügbar sind. Wenn Sie das Kontrollkästchen Standard auswählen, wird die Ebene bei der Wiedergabe der Karte angezeigt. Sie können eine Ebene hinzufügen, indem Sie auf das Register Details einblenden oberhalb der Karte klicken und das Kontrollkästchen neben dem Namen der Ebene auswählen. Wenn Sie ein Kontrollkästchen abwählen, wird die entsprechende Ebene aus der Anzeige entfernt. Wenn Sie eine Ebene mit den zugehörigen Legendeninformationen auswählen, wird die Legende in einer Spalte rechts auf der Karte angezeigt. Bei der Anzeige mehrerer Ebenen werden die Legenden in der Anzeigereihenfolge aufgelistet. Wenn Sie die Maße der Karte durch Zoomen ändern, werden die Daten in den Legenden aktualisiert, um die richtige Detaillierungsebene widerzuspiegeln Wenn eine Ebene standardmäßig angezeigt wird, wird die Legende erst angezeigt, wenn Sie auf das Register Details einblenden oder auf das Register Tabelle einblenden klicken. Durch die Verzögerung der Anzeige wird Platz auf der Karte eingespart, was relevant ist, wenn eine Karte in kleineren Anzeigen wie einem Portal eingeblendet wird. Nachdem die letzte Ebene entfernt wurde, wird auch die Spalte mit der Legende nicht mehr angezeigt. 42 © Copyright IBM Corp. 2011, 2016 Der Ebenendatensatz erfordert, dass Sie die REST-URL des Esri-Servers angeben, der den Kartenservice bereitstellt. Wenn die URL korrekt und gültig ist, wird die Beschreibung des Basiskartenservice, die vom Esri-Server bereitgestellt wird, unten im Formular "GIS-Basiskarte" angezeigt. Wenn anstelle der Beschreibung des Basiskartenservice nichts oder ein Fehler angezeigt wird, vergewissern Sie sich, dass Ihr Esri-Server den Ebenenservice mit REST-Endpunkten aktiviert hat. Symbole Die Nadelfarben und Symbolfarben können definiert werden, um einen bestimmten Bereich von Datenwerten darzustellen. Wenn eine Metrikabfrage die Punkte auf der Karte bestimmt, steuern die in der Metrikabfrage definierten Schwellenwerte die Farben der Nadeln. Angenommen, der Schwellenwert in einer Metrikabfrage definiert einen Wert von 1 bis 3 als niedrig und die Farbe Rot stellt ein negatives Ergebnis dar. Wenn die Abfrage den Wert 2 zurückgibt, wird die Nadel mit der Symboldatei angezeigt, die im Feld Rotes Symbol enthalten ist. Das Feld Blaues Symbol wird für einen Wert verwendet, der von einer Standardabfrage zurückgegeben wird. Sie können die angezeigten Symbole ändern, indem Sie Ihre Dateien in den Abschnitt Symbole hochladen. Eine Symboldatei kann jedes Format haben, das für die Wiedergabe von Daten im Web verwendet wird, z. B. .jpg oder .png. Wenn Sie die Symboldateien nicht ändern, werden die mitgelieferten Symbole verwendet. Widgets Die Widgets können definiert werden, um einen Geoprozessor hinzuzufügen, eine Übersichtskarte bereitzustellen oder angepasste Widgets hinzuzufügen. Die meisten Widgets werden verfügbar, wenn Sie auf das Register Details einblenden oberhalb der Registerkarte klicken. Beispielwidgets IBM TRIRIGA Connector for Esri Geographic Information System (GIS) enthält Beispielwidgets aus Esri. Diese mitgelieferten Widgets werden nur zu Demonstrationszwecken bereitgestellt. Die Beispielwidgets haben die folgenden Merkmale: Geocoder-Widget Mit dem mitgelieferten Geocoder-Widget können Sie die Karte auf Breitengrad- und Längengradkoordinaten oder auf eine Adresse richten. Fahrzeitwidget Das mitgelieferte Fahrzeitwidget zeigt Radien für Fahrzeiten von 1 Minute, 2 Minuten und 3 Minuten ausgehend vom ausgewählten Punkt an. Übersichtskartenwidget Sie öffnen das mitgelieferte Übersichtskartenwidget, indem Sie auf den Pfeil oben rechts in der Karte klicken. Die Übersichtskarte enthält eine zusammengefasste Version der Karte und ein Teilfenster, das verschoben werden kann. Sie können dieses Teilfenster ziehen, um größere Regionen der Karte zu scannen, ohne die Karte verkleinern zu müssen. Editor-Widget Mit dem mitgelieferten Editor-Widget können Sie eine Linie, ein Polygon oder einen Punkt auf einer Karte zeichnen. Die Entität wird in der EsriKarte gespeichert, wenn Sie das Feature einem der Datensätze in der AbKapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren 43 frage zuordnen oder wenn Sie das Kontrollkästchen Alle Features anzeigen auswählen. Das mitgelieferte Editor-Widget hat den Namen "sampleEditor.js". Sie können diese Datei als Beispiel für die Erstellung angepasster Editor-Widgets verwenden. Im mitgelieferten Beispieleditor-Widget kann einem Feature eine IBM TRIRIGA-ID zugeordnet werden. Um eine Funktion mit einer ID zu verknüpfen, geben Sie einen Wert in eines der Zahlenfelder oder Textfelder im Informationsfenster ein. Im Beispiel wird das Feld Ausgabe-ID verwendet. Sie können dieselbe Methode in einem anderen Editor-Widget verwenden, um einem Feature einen Wert zuzuordnen. Sie können ein Feature zeichnen und es einem IBM TRIRIGA-Datensatz zuordnen, indem Sie auf das Register Tabelle einblenden klicken und das Symbol Ausgewähltes Feature zuordnen für den IBM TRIRIGA-Datensatz in der Tabelle auswählen. Bei der nächsten Abfrage des Datensatzes wird das Feature auf der Karte angezeigt. Die IBM TRIRIGA-ID ist die gemeinsame ID von IBM TRIRIGA und Esri. Die Aktivierung des mitgelieferten Editor-Widgets wirkt sich störend auf die von den Nadelsymbolen bereitgestellten Informationen in den Blasen aus. Im derzeitigen Release gibt es keine bekannte Fehlerumgehung. Proximitätswidget Wenn Sie im mitgelieferten Proximitätswidget auf einen Punkt auf der Karte klicken, verarbeitet der Server einen Entfernungsradius aus dieser Karte. Die auf der Karte angezeigten Daten werden so geändert, dass nur die Gebäude angezeigt werden, die sich innerhalb dieser Proximitätsgrenzen befinden. Die Proximitätsgrenzen werden vom Server festgelegt. Angepasste Widgets Angepasste Widgets setzen sich aus aufgeteiltem JavaScript-Code zusammen, der speziell für Esri-Widgets gilt. Dieses Feature ermöglicht Ihnen, ein angepasstes Esri-Widget anzuwenden, das auf Version 3.17 der Esri-JavaScript-API basiert. Ein angepasstes Widget könnte ein einfaches Kartenoverlay oder eine komplexe Polygonbearbeitung sein. Zum Definieren eines Widgets laden Sie den JavaScript-Code für das Widget in das Feld Code hoch. Nachdem Sie den angepassten JavaScript-Code in das Binärfeld hochgeladen haben, wird dieser Code in die JavaScript-Anzeigefunktion von Esri injiziert und zur Laufzeit der wiedergegebenen Karte hinzugefügt. Weitere Informationen finden Sie im White Paper zur Erstellung von EsriJS-Widgets (https://www.ibm.com/developerworks/community/wikis/home?lang=en#/ wiki/IBM+TRIRIGA1/page/Connector+for+Esri+GIS). Widgetgruppen Die Widgetgruppen geben die Sicherheitsgruppen an, die neben den Mitgliedern der Administratorgruppe berechtigt sind, auf Widgets zuzugreifen. Die Benutzer in den aufgelisteten Sicherheitsgruppen und in der Administratorgruppe können ein bestimmtes Widget sehen, wenn die Option Sicherheit hinzufügen im Abschnitt "Widgets" für das Widget ausgewählt ist. Unabhängig von den ausgewählten Widgetgruppen müssen alle Benutzer ohne Administratorberechtigungen jedoch Mitglieder der Sicherheitsgruppe "TRIRIGA GIS Widget View Mode" sein, um Widgets in der GIS-Karte anzeigen zu können. 44 © Copyright IBM Corp. 2011, 2016 Geometrieservices Der Geometrieservice identifiziert den Service, der verwendet wird, um die Transformation von Projektionen für die JavaScript-Anzeigefunktion von Esri zu verarbeiten. Sie können diesen Service in Widgets referenzieren und für die Punktprojektion verwenden. Vorgaben voranzeigen Sie können die im GIS-Kartendatensatz konfigurierte Karte voranzeigen und Kartenvorgaben auf der Registerkarte Vorschau des Formulars speichern. Sie können die Basiskarte und die Maße Ihrer aktuellen Ansicht speichern, indem Sie auf das Register Details einblenden und dann auf die Schaltfläche Vorgaben speichern klicken. Wenn Sie die Schaltfläche Vorgaben löschen auswählen, werden die Basiskarte und die Maße auf die Standardwerte zurückgesetzt, die im GIS-Kartendatensatz definiert sind. Die Vorgaben werden von einer Zuordnung vom GISKartendatensatz zum GIS-Benutzervorgabenobjekt gesichert. Sie können Vorgaben für jede Karte speichern. Sie können die auf der Karte dargestellten Daten in einer Tabelle anzeigen, indem Sie das Register Tabelle einblenden auswählen. Wenn Sie eine Zeile in der Tabelle auswählen, wird die Karte auf den Punkt der Karte gezoomt, der diesem Datensatz entspricht, und dort zentriert. Bei der Auswahl des Links Exportieren oben rechts in der Tabelle wird die Tabelle als Textdatei mit Tabulatoren als Trennzeichen heruntergeladen. Der Wert im Feld Erstellte URL auf der Registerkarte Vorschau ist die URL für die Karte, die auf der Registerkarte Vorschau angezeigt wird. Sie können den Wert aus dem Feld Erstellte URL kopieren und in einen Lokationsdatensatz einfügen, um die Lokation an die Karte zu binden. GIS-Karten konfigurieren Sie verwenden GIS-Kartendatensätze, um GIS-Karten in Ihren IBM TRIRIGA-Portalen und -Formularen anzuzeigen. Der GIS-Kartendatensatz definiert die Verbindung zwischen der IBM TRIRIGA-Anwendung und dem ArcGIS-Server, der die Esri-Karten bereitstellt. Der GIS-Kartendatensatz enthält die Metadaten, die die anzuzeigenden Karten, Ebenen und Widgets definieren. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > GIS > GIS-Karte. 2. Fügen Sie einen GIS-Kartendatensatz hinzu. 3. Geben Sie den Kartennamen, die minimalen und maximalen Abmessungen und die WKID (Well-Known ID) für die Karte an. 4. Identifizieren Sie die Abfragen, um die Datenergebnisse, die in der Karte angezeigt werden, zu definieren. 5. Identifizieren Sie die Basiskarten und deren URLs für den Esri-Server, der den Kartenservice bereitstellt. 6. Identifizieren Sie alle Ebenen, um die Legendeninformationen anzugeben, die oberhalb der Karte angezeigt werden. 7. Ersetzen Sie alle Symbole, um die Nadeln anzupassen, die in der Karte angezeigt werden. 8. Identifizieren Sie alle Widgets, um weitere Kartentools bereitzustellen oder neue Kartentools anzupassen. Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren 45 9. Identifizieren Sie alle Widgetgruppen, um zusätzlich zu den Mitgliedern der Administratorgruppe Sicherheitszugriff auf Widgets zu erhalten. 10. Geben Sie alle Geometrieservices an, die Projektionen für die JavaScript-Anzeigefunktion von Esri transformieren. 11. Erstellen Sie den Datensatz und speichern Sie ihn. Angepasste GIS-Portalabschnitte hinzufügen Ein GIS-Portalabschnitt verweist auf eine anwendungsinterne Webseite, die eine GIS-Karte enthält. Die GIS-Karte ist einem GIS-Kartendatensatz zugeordnet, der die wiederzugebenden Daten definiert. Ein GIS-Portalabschnitt enthält ein Feld Extern, in dem Sie die URL der Karte eingeben. Informationen zu diesem Vorgang Sie können einen der folgenden mitgelieferten GIS-Portalabschnitte für die anwendungsinternen Webseiten als Referenz verwenden: v triURL - GIS - Environmental Manager/Planner oder v triURL - GIS - Environmental Manager/Planner (US Govt) Vorgehensweise 1. Konfigurieren Sie einen GIS-Kartendatensatz. Definieren Sie die Abmessungen, Abfragen, Basiskarten, Ebenen und weitere Kartenelemente. In diesem Beispiel hat die Karte den Namen My First Map. 2. Erstellen Sie im Portal-Builder einen neuen Portalabschnitt mit dem Portalabschnittstyp Extern. 3. Geben Sie die URL der Karte ein. In diesem Beispiel ist die URL /html/en/default/rest/EsriJS?map=My First Map. Der Kartenparameterwert My First Map weist die Kartenanzeigefunktion an, diesen GIS-Kartendatensatz wiederzugeben. ArcGIS-Server angeben Ihr ArcGIS-Server kann ein externer Online-ArcGIS-Server oder ein intern gehosteter ArcGIS-Server sein. Standardmäßig ist EsriJS für den Online-ArcGIS-Server konfiguriert. Eine Ressourcendatei im EsriJS-ClassLoader-Datensatz kann festlegen, dass GIS-Karten von einem intern gehosteten Server verwendet werden sollen. Informationen zu diesem Vorgang Die Ressourcendatei für einen intern gehosteten ArcGIS-Server, der sich gewöhnlich hinter einer Firewall befindet, muss den Namen Esri_API_3.17.zip haben. Wenn ein Benutzer eine Karte zum ersten Mal lädt, stellt die Software eine Verbindung zu dem Service her, der in der Ressourcendatei im EsriJS-ClassLoader-Datensatz definiert ist. Wenn die Datei Esri_API_3.17.zip nicht vorhanden ist, wird der externe Online-ArcGIS-Server verwendet. Vorhandene EsriJS-ClassLoader-Datensätze werden unter Tools > Systemkonfiguration > System > Klassenladeprogramm aufgelistet. Interne ArcGIS-Server angeben Sie geben die Position Ihres intern gehosteten ArcGIS-Servers in der Ressourcendatei an, die Sie dem EsriJS-ClassLoader-Datensatz hinzufügen. 46 © Copyright IBM Corp. 2011, 2016 Informationen zu diesem Vorgang [HOSTNAME_AND_PATH_TO_JSAPI] muss geändert werden, um auf die Variable BASE_URL zu verweisen. Die Ressourcendatei, die Sie dem EsriJS-ClassLoader-Datensatz hinzufügen, muss den Namen EsriJS_API_3.17.zip haben. Nachdem Sie Ihre Datei EsriJS_API_3.17.zip hinzugefügt haben, werden die Karte und alle künftigen Karten vom internen, gehosteten Server abgerufen, wenn ein Benutzer das nächste Mal auf eine GIS-Karte zugreift. Vorgehensweise 1. Rufen Sie die Webseite mit den Esri-Downloads (https:// developers.arcgis.com/en/downloads/) auf. a. Laden Sie die ArcGIS-API für JavaScript Version 3.17 (arcgis_js_v317_api.zip) herunter. b. Extrahieren Sie die Dateien aus dieser komprimierten Datei. 2. Suchen Sie die Datei arcgis_js_v317_api\arcgis_js_api\library\3.17\3.17\ init.js und öffnen Sie sie in einem Texteditor. a. Suchen Sie [HOSTNAME_UND_PFAD_ZUR_JSAPI] in der folgenden Zeile: location.protocol) + ’//’ + "[HOSTNAME_UND_PFAD_ZUR_JSAPI]dojo" b. Ändern Sie diese Zeile in den folgenden Code: location.protocol) + ’//’ + BASIS_URL +"dojo" c. Achten Sie auf die Position der Anführungszeichen. d. Speichern Sie die Datei init.js. 3. Suchen Sie die Datei arcgis_js_v317_api\arcgis_js_api\library\3.17\3.17\ dojo\dojo.js und öffnen Sie sie in einem Texteditor. a. Suchen Sie [HOSTNAME_UND_PFAD_ZUR_JSAPI] in der folgenden Zeile: location.protocol) + ’//’ + "[HOSTNAME_UND_PFAD_ZUR_JSAPI]dojo" b. Ändern Sie diese Zeile in den folgenden Code: location.protocol) + ’//’ + BASIS_URL +"dojo" c. Achten Sie auf die Position der Anführungszeichen. d. Speichern Sie die Datei dojo.js. 4. Suchen Sie arcgis_js_v317_api\arcgis_js_api\library und wählen Sie den Ordner 3.17 aus. Erstellen Sie eine komprimierte Datei dieses Ordners. 5. Benennen Sie die komprimierte Datei in EsriJS_API_3.17.zip um. 6. Öffnen Sie den EsriJS-ClassLoader-Datensatz. 7. Fügen Sie im Datensatz eine Ressourcendatei hinzu, damit Sie Ihre Datei EsriJS_API_3.17.zip hochladen können. Wenn die Datei EsriJS_arcgis.js vorhanden ist, müssen Sie sie aus den Ressourcendateien entfernen. 8. Speichern Sie den Datensatz. Umstellung von internen auf externe Server Sie geben die Position Ihres intern gehosteten ArcGIS-Servers in der Ressourcendatei an, die Sie dem EsriJS-ClassLoader-Datensatz hinzufügen. Sie können eine Umstellung von einem intern gehosteten Server auf den externen Online-ArcGISServer durchführen, indem Sie die Ressourcendatei Esri_API_3.17.zip entfernen. Informationen zu diesem Vorgang Nachdem Sie den ArcGIS-Server geändert haben, werden diese Karte und alle künftigen Karten vom neuen Server abgerufen, wenn ein Benutzer das nächste Mal auf eine GIS-Karte zugreift. Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren 47 Vorgehensweise 1. Öffnen Sie den EsriJS-ClassLoader-Datensatz. 2. Suchen bzw. erstellen Sie die Ressourcendatei, die den neuen ArcGIS-Server angibt, und fügen Sie die Ressourcendatei dem Datensatz hinzu. 3. Entfernen Sie die alte Ressourcendatei, die den alten ArcGIS-Server angibt. 4. Speichern Sie den Datensatz. Fehlerbehebung bei GIS-Karten Wenn Sie Hilfe bei der Behebung von Leistungs- oder Anzeigeproblemen mit Ihren GIS-Portalabschnitten und -Formularregisterkarten benötigen, ziehen Sie die folgende Liste mit Problemen, Ursachen und Problemlösungen zu Rate. Gängige Probleme mit GIS-Karten Zu gängigen GIS-Problemen gehören langsame Antwortzeiten, fehlende Elemente und doppelte Datensätze. Einige gängige Erläuterungen können Ihnen möglicherweise bei der Behebung dieser Probleme helfen. Antwortzeiten der Karte sind langsam Die Aktualisierungsrate der Karte beim Verkleinern und Vergrößern richtet sich nach der Geschwindigkeit Ihrer Internetverbindung. Jedes Mal, wenn Sie die Karte verschieben, wird ein Aufruf abgesetzt, auf den hin geantwortet und die Karte neu gezeichnet werden muss. Ihre Esri-JavaScript-Anzeigefunktion verarbeitet diese Aktionen. Die für das Neuzeichnen der Karte erforderliche Zeit richtet sich nach der Geschwindigkeit des verwendeten Netzes. Wenn Sie einen Online-Service wie Esri verwenden, kommunizieren die Befehle über HTTP. Wenn Sie einen internen Esri-Server verwenden, bestimmt Ihr Intranet die Latenzzeit. Wenn die JavaScript-Anzeigefunktion von Esri in Microsoft Internet Explorer verwendet wird, vergewissern Sie sich, dass die folgende XML-HTTPEinstellung im Browser aktiviert ist. Wählen Sie Extras > Internetoptionen > Erweitert > Systemeigene XMLHTTP-Unterstützung aktivieren aus. Beschriftungen in den Blasen und in der Tabelle erscheinen nicht Die Beschriftungen in den Blasen und in der Tabelle werden durch IBM TRIRIGA-Abfragen definiert. Um die Markierungen auf der Karte zu platzieren, müssen die Daten und die Abfrage Felder enthalten, die mit Breitengrad und Längengrad beschriftet sind. Zum Anzeigen des Bilds einer Lokation in Blasen müssen die Lokationsdaten und die Abfrage ein Feld enthalten, das mit Bild beschriftet ist. Fehlende Lokationen v Die Lokationen sind nicht geocodiert. Damit eine Lokation auf der Karte angezeigt wird, muss der Datensatz geocodiert sein. v Ihre Abfrage gibt keine Ergebnisse zurück. v Ihr ArcGIS-Server ist inaktiv oder antwortet nicht. Daten werden nicht angezeigt v Alle Abfragen müssen in eine Liste mit Lokationen oder Entitäten aufgelöst werden. v Das System ist so konzipiert, dass es eine Erstabfrage und eine Basiskarte besitzt. Eine Standardabfrage kann diese Voraussetzungen umgehen 48 © Copyright IBM Corp. 2011, 2016 und alle geocodierten Ergebnisse auf der Karte anzeigen. Die Abfrage muss Spalten mit Breitengrad und Längengrad in den Ergebnissen zurückgeben. Doppelte Datensätze Doppelte Datensätze in der Tabelle werden durch ein Datenproblem in den hierarchischen Strukturen verursacht. GIS verwendet eine flache Hierarchietabelle. Sie können die flache hierarchische Struktur neu erstellen. GIS-Abschnitt ist leer Wenn Ihr GIS-Abschnitt eine leere weiße Anzeige anstelle einer Karte enthält, überprüfen Sie die folgenden Bedingungen: v Die GIS-Konfigurationsseiten sind ordnungsgemäß konfiguriert. v Der ArcGIS-Server ist aktiv. v Das ArcGIS-Klassenladeprogramm ist nicht auf den Debugmodus eingestellt. v Sie haben eine Lizenz für die Verwendung der GIS-Karte. Nachricht mit Hinweis auf eine fehlende Lizenz Wenn eine Nachricht erscheint, in der Sie darauf hingewiesen werden, dass Sie keine GIS-Lizenz haben, vergewissern Sie sich, dass Ihre IBM TRIRIGALizenzdateien aktuell sind. Fehlende Ressourcendateien Der Abschnitt "Ressourcendatei" des EsriJS-ClassLoader-Datensatzes muss die folgenden vier Dateien enthalten: TRIRIGAIntegration.jar, EsriJS.jar, EsriJS_Assets.zip und EsriJS_LanguagePack.zip. Wenn eine dieser Dateien nicht vorhanden ist, klicken Sie auf Suchen und fügen Sie dem Datensatz die fehlende Datei hinzu. Fehlende Menüpunkte Wenn der Menüpunkt GIS-Karte nicht unter Tools > Systemkonfiguration angezeigt wird, fügen Sie im Navigationsbuilder den Menüpunkt wie folgt hinzu. Bearbeiten Sie die vorhandene Menüobjektgruppe, rufen Sie die Navigation Items Library auf, suchen Sie nach dem Element GIS Map Manager Query und fügen Sie das Element der Navigationsobjektgruppe unter Tools > Systemkonfiguration hinzu. Wenn der Menüpunkt GIS Esri Authentication nicht unter Tools > Systemkonfiguration angezeigt wird, fügen Sie im Navigationsbuilder den Menüpunkt wie folgt hinzu. Bearbeiten Sie die vorhandene Menüobjektgruppe, rufen Sie die Navigation Items Library auf, suchen Sie nach dem Element GIS Esri Authentication und fügen Sie das Element der Navigationsobjektgruppe unter Tools > Systemkonfiguration hinzu. Doppelte Datensätze aus GIS-Karten entfernen Zum Entfernen doppelter Datensätze aus der Tabelle Ihrer GIS-Kartenanzeige können Sie Ihre flache hierarchische Struktur mit dem Datenmodellierer von IBM TRIRIGA neu erstellen. Vorgehensweise 1. Wählen Sie Tools > Builder-Tools > Datenmodellierer aus. 2. Wählen Sie Dienstprogramme > Hierarchische Strukturen aus. 3. Wählen Sie Alle Geografien und dann den Link Daten generieren aus. Kapitel 3. Daten mit TRIRIGA Connector for Esri Geographic Information System (GIS) integrieren 49 4. Wählen Sie Gebäudeflächen und dann den Link Daten generieren aus. 5. Wählen Sie Gebäude und Grundstück und dann den Link Daten generieren aus. 50 © Copyright IBM Corp. 2011, 2016 Kapitel 4. Connectorfunktionen erweitern Für zahlreiche IBM TRIRIGA-Connectors können erweiterte Funktionen geschrieben werden. Diese erweiterten Funktionen verwenden Klassenladeprogramme, Ressourcendateien, angepasste Workflowkomponenten, Servlet-Proxys, die Programmiersprache Java und die Web-Service-Schnittstelle von IBM TRIRIGA Connector for Business Applications. Übersicht über erweiterte Funktionen IBM TRIRIGA-Connectors verwenden das ClassLoader-Geschäftsobjekt und Ressourcendateien. Der Servlet-Proxy ist eine Erweiterung von Klassenladeprogrammen. Wenn Sie erweiterte Funktionen schreiben, können Sie diese Funktionen in einem Objektmigrationspaket verteilen. Connectors verwenden das ClassLoader-Geschäftsobjekt und Ressourcendateien sowie angepasste Workflowkomponenten wie CustomTask, CustomParameters und CustomTransitions. Der Servlet-Proxy ist eine Erweiterung von Klassenladeprogrammen, die der Java-API ein Handle für IBM TRIRIGA Connector for Business Applications (CBA) bietet. CBA verwendet die Programmierung im Java-Servlet-Stil für die Integration in externe Systeme mit angepassten Formularkomponenten. Zum Erstellen von IBM TRIRIGA-Connectors müssen Sie mit den IBM TRIRIGA Application Platform-Builder-Tools, der Web-Service-Schnittstelle von IBM TRIRIGA Connector for Business Applications und der Programmiersprache Java vertraut sein. Ein Connector kann nur mit der Programmiersprache Java implementiert werden. Angepasste Klassenladeprogramme Die angepassten Klassenladeprogrammkomponenten von IBM TRIRIGA arbeiten mit den Systemklassenladeprogrammen zusammen, um Java-Klassen in der Anwendungsserverdomäne zu implementieren. Die folgende Abbildung veranschaulicht die Interaktion zwischen dem angepassten Klassenladeprogramm von IBM TRIRIGA und den Systemklassenladeprogrammen. © Copyright IBM Corp. 2011, 2016 51 TRIRIGA ClassLoader TRIRIGADatenbank Anforderung ClassLoaderDatensatz suchen Nein ClassLoader für Anwendung zurückgeben Ja Ist geladen? Ja ClassLoader zurückgeben Angepasste ClassLoader Nein Klassen laden ClassLoader zurückgeben Abbildung 1. Angepasstes Klassenladeprogramm Angepasste Klassen und angepasste Aufgaben Wenn Sie einen ClassLoader-Datensatz erstellen, können Sie dem Klassenpfad des Anwendungsservers angepasste Java-Klassen hinzufügen. Auf diese Klassen kann über eine angepasste Aufgabe in einem Workflow zugegriffen werden. Beim Hinzufügen von angepassten Java-Klassen zum Klassenpfad des Anwendungsservers können Sie zwischen drei Optionen wählen: Übergeordnet zuerst, Übergeordnet zuletzt und Isoliert. Für die programmgesteuerte Interaktion können Sie mit einer angepassten Aufgabe auf diese Klassen zugreifen oder die Klassen so erweitern, dass sie als Java-Servlet funktionieren. Mit beiden Methoden werden die Formularfunktionen für Portalabschnitte und Formularregisterkarten erweitert. Wenn Sie über eine angepasste Aufgabe, die vom Klassenladeprogramm geladen wird, auf Ihre Klassen zugreifen möchten, müssen Sie die folgenden Regeln einhalten: v Starten Sie Ihre Klassenpakete mit einer der folgenden drei Strukturen: com.tririga.ps, com.tririga.appdev oder com.tririga.custom. Alle anderen Strukturen werden blockiert. v Geben Sie den ClassLoader-Namen, gefolgt von einem Doppelpunkt im Feld ClassName in der angepassten Workflowaufgabe an. Wenn Sie beispielsweise einen ClassLoader-Datensatz mit dem Namen MyClassLoader haben und Ihre Ein- 52 © Copyright IBM Corp. 2011, 2016 stiegsklasse com.tririga.custom.myclassloader.Hello ist, enthält das Feld ClassName den Wert MyClassLoader:com.tririga.custom.myclassloader.Hello. Wenn Sie diese Namenskonvention verwenden, kann der Workflow nach Ihrer Klasse im Kontext des angegebenen Klassenladeprogramms suchen. v Implementieren Sie eines der com.tririga.workflow.pub.CustomTask-Objekte aus der mitgelieferten Datei TririgaCustomTask.jar im Ordner Installationsverzeichnis/tools/BusinessConnect. Für die Entwicklung müssen Sie die Datei TririgaBusinessConnect.jar und die Datei TririgaCustomTask.jar in Ihren IDE-Klassenpfad einschließen. Wenn Sie diese Bibliotheken in das ClassLoader-Geschäftsobjekt einschließen, werden diese ignoriert. Informationen zur Implementierung einer angepassten Aufgabe und zu den Möglichkeiten, die Ihnen eine angepasste Aufgabe bietet, finden Sie in der Veröffentlichung Erstellung von Anwendungen für IBM TRIRIGA Application Platform 3. Das ClassLoader-Objekt ist ein einfaches Handle für die Durchführung einer Implementierung während des Betriebs und die sichere Verwaltung der Implementierungen Ihrer angepassten Aufgabe. Es fügt einer angepassten Aufgabe weder eine Funktion hinzu noch ändert es eine Funktion einer angepassten Aufgabe. Die Veröffentlichung Erstellung von Anwendungen für IBM TRIRIGA Application Platform 3 enthält Anweisungen zum Speichern Ihrer Dateien im Verzeichnis lib des Anwendungsservers. Sie können diesen Schritt überspringen, der kompliziert werden kann, wenn Sie mehrere Server haben. Fügen Sie stattdessen das Klassenladeprogramm der Datenbank hinzu, damit der Container die Klassen intelligent extrahiert und verwendet. Entwicklungsmodus des Klassenladeprogramms Im Entwicklungsmodus können Sie Dateien ändern und Ihre Änderungen anzeigen, indem Sie die Seite aktualisieren, ohne Dateien in den ClassLoader-Datensatz hochladen zu müssen. Wenn Sie eine Ressourcendatei für einen ClassLoader-Datensatz ändern, hinzufügen oder entfernen, wird gewöhnlich ein Workflow ausgeführt, der die Revisionsnummer erhöht. Durch eine Änderung dieser Revisionsnummer wird IBM TRIRIGA Application Platform angewiesen, diesen ClassLoader-Datensatz erneut zu laden. Wenn Sie jedoch Zugriff auf den IBM TRIRIGA-Ordner Installationsverzeichnis/ userfiles/Name_des_Klassenladeprogramms haben, können Sie die Option Entwicklungsmodus im ClassLoader-Datensatz auswählen. In diesem Fall ignoriert das Klassenladeprogramm die Revisionsnummer und extrahiert Dateien stattdessen aus dem Ordner Installationsverzeichnis/userfiles/ Name_des_Klassenladeprogramms. Zu den Dateitypen, die Sie ändern können, gehören Webseiten, (.html), JavaScriptDateien (.js), Adobe-Flash-Dateien und Bilder. Achtung: Wenn Sie das Kontrollkästchen Entwicklungsmodus abwählen, extrahiert IBM TRIRIGA Application Platform die aktuellen Dateien aus dem ClassLoader-Datensatz und Sie können Ihre Arbeiten überschreiben. Servlet-Proxys Der Servlet-Proxy ist eine Erweiterung von Klassenladeprogrammen. Sie verwenden den Servlet-Proxy, um Servletklassen zu entwickeln, die Formularassets wieKapitel 4. Connectorfunktionen erweitern 53 dergeben und umleiten sowie mit Formularassets im ClassLoader-Datensatz kommunizieren können. Die Assets müssen als Ressourcendateien in den ClassLoaderDatensatz hochgeladen werden. TRIRIGA Anforderung Servlet-Proxy Die folgende Abbildung veranschaulicht die Interaktion zwischen dem ServletProxy und dem angepassten IBM TRIRIGA-Klassenladeprogramm. Sitzung authentifizieren Ausnahme auslösen Angepasster ClassLoader TRIRIGADatenbank Implementierungsklasse instanziieren Nein Client authentifzieren Nein TririgaWS (CBA-API) Ja IConnectImplementierung Connector for Business Applications Ja GUI Angepasster Code Fernzugriff auf Daten GUI anzeigen Abbildung 2. Servlet-Proxy Servlet-Proxy-Zugriff Ein Servlet-Proxy ist unter der URL http://Ihr_Server/html/en/default/rest/ Connectorname verfügbar. Wenn Ihr Servlet-Proxy den Namen MyFirstConnector hat und ordnungsgemäß konfiguriert ist, ist er unter der folgenden URL verfügbar: http://Ihr_Server/html/en/default/rest/MyFirstConnector. Sie müssen einen gültigen Benutzernamen und ein Kennwort haben, um auf diese URL zuzugreifen. Sie können diese URL als externen Link in einem Portalabschnitt oder auf einer angepassten Formularregisterkarte hinzufügen. Alle Zugriffe auf Ihren Servlet-Proxy gehen von dieser Basis-URL aus. Wenn Sie auf die Dateien in den Ressourcendateien Ihres Klassenladeprogramms zugreifen möchten, fügen Sie das Wort resource, gefolgt vom Pfad zur Ressource, die Sie laden möchten, an diese URL an. Wenn Sie ein Bild als Ressourcendatei mit dem Na- 54 © Copyright IBM Corp. 2011, 2016 men helloWorld.jpg haben, können Sie dieses Bild dynamisch über die folgende URL laden: http://Ihr_Server/html/en/default/rest/MyFirstConnector/ resource/helloWorld.jpg. Der Server prüft, ob diese Ressourcendatei geladen ist. Wenn die Datei nicht geladen ist, extrahiert der Server die Datei aus dem Binärfeld Ressourcendatei im Ressourcendateidatensatz und speichert sie im Ordner Installationsverzeichnis/ userfiles/Name_des_Klassenladeprogramms. Wenn eine Anforderung abgesetzt wird, überprüft der Server den Cache und gleicht dessen Revisionsnummer mit der Revisionsnummer im Klassenladeprogramm ab. Weichen die Revisionsnummern voneinander ab, lädt der Server alle Dateien, die nicht in einer .jar-Datei enthalten sind, erneut in dieses Verzeichnis. Anschließend verweist der Server bei jeder nachfolgenden Anforderung auf diese Position. Ihre Ressourcendateien werden automatisch aktualisiert, sobald eine Änderung vorgenommen wird. Sie müssen den Server nicht erneut starten, um das Klassenladeprogramm zu aktualisieren. Klassenladeprogrammen Ressourcendateien hinzufügen Sie fügen Ihrem Klassenladeprogramm Ressourcendateien hinzu, um Ihre Klassen und Formularassets, wie z. B. Webseiten (.html), JavaScript-Dateien (.js), FlashDateien, Bilddateien und Eigenschaftendateien, bereitzustellen. Eine JavaScript-Ressourcendatei (.js) im EsriJS-ClassLoader-Datensatz gibt beispielsweise an, woher die GIS-Karten stammen. Informationen zu diesem Vorgang Eine Ressourcendatei kann von mehreren Klassenladeprogrammen verwendet werden. Für Ressourcendateien empfiehlt es sich, den Bibliotheksnamen eine Abkürzung des Klassenladeprogramms und des tatsächlichen Namens der Bibliothek als Präfix voranzustellen. Wenn Sie eine .jar-Datei hochladen, werden nur die .class-Dateien in den Klassenpfad geladen. Wenn Sie viele Assets wie Webseiten (.html), JavaScript-Dateien (.js) und Bilddateien haben, können Sie sie in einer komprimierten Datei erfassen und dann als eine einzige Datei hochladen. Sie können eine Datei, z. B. eine Konfigurationsdatei, auch einzeln hochladen, sodass Sie sie einfacher ändern können. Wenn Sie eine Ressourcendatei aus einem ClassLoader-Datensatz ändern, hinzufügen oder entfernen, wird ein Workflow ausgeführt, der die Revisionsnummer erhöht. Durch eine Änderung der Revisionsnummer wird IBM TRIRIGA Application Platform angewiesen, diesen ClassLoader-Datensatz erneut zu laden. Vorgehensweise 1. Klicken Sie auf Tools > Systemkonfiguration > System > Klassenladeprogramm. 2. Fügen Sie den ClassLoader-Datensatz hinzu oder öffnen Sie ihn. 3. Suchen Sie Ihre Ressourcendateien im Datensatz bzw. fügen Sie sie hinzu. 4. Speichern Sie den Datensatz. Kapitel 4. Connectorfunktionen erweitern 55 Servlet-Proxys konfigurieren Damit Ihr Servlet-Proxy Ihren Code ordnungsgemäß wiedergibt und durchläuft, implementieren Sie eine Java-Schnittstellenklasse, die in der Datei TririgaCustomTask.jar enthalten ist. Informationen zu diesem Vorgang Das Paket com.tririga.custom ist das einzige Paket, das Sie zum Erstellen einer Implementierungsklasse verwenden können. Die Klasse muss eindeutig sein. Sie können pro ClassLoader-Datensatz nur eine einzige IConnect-Implementierungsklasse angeben. Der ClassLoader-Datensatz und die Java-Klasse, die IConnect implementiert, müssen denselben Namen haben. Wenn Ihre Klasse beispielsweise den Namen MyFirstConnector hat, müssen Sie Ihren ClassLoader-Datensatz mit dem Namen MyFirstConnector identifizieren. Nach der Konfiguration des Servlet-Proxys können Sie auf den Connector zugreifen. Vorgehensweise 1. Erstellen Sie eine Java-Klasse im Paket com.tririga.custom. Erstellen Sie beispielsweise eine Klasse mit dem Namen MyFirstConnector. 2. Implementieren Sie die Java-Schnittstelle com.tririga.pub.adapter.IConnect mit der Methode execute der Klasse IConnect. Wenn Ihre Klasse beispielsweise den Namen MyFirstConnector hat, erstellen Sie den folgenden Code: public class MyFirstConnector implements IConnect { public void execute(TririgaWS tws, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Ihren Code hier einfügen } } Dieses Beispiel enthält ein Handle für eine TririgaWS-Schnittstellenklasse. Diese Klasse ist die Java-Schnittstelle für die IBM TRIRIGA Connector for Business Applications-API. Das Beispiel enthält auch eine Basisanforderung und eine Antwort, die Sie normalerweise in einem Java-Servlet haben. 3. Fügen Sie Ihren Code für die Methode execute an der Stelle ein, an der //Ihren Code hier einfügen steht. Fügen Sie den folgenden Code ein, um in der Fortsetzung des Beispiels eine Webseite (.html) mit den Worten "Hello World" zu drucken: PrintWriter out = response.getWriter(); try{ response.setContentType("text/html"); out.println("<html><head></head><body marginwidth=’0’ marginheight=’0’ style=’margin:0;padding:0;border:0;’>"); out.print("Hello World"); out.println("</body></html>"); out.flush(); } finally { if(out!=null)out.close(); } 4. Kompilieren Sie Ihre Java-Klasse und fügen Sie sie einer .jar-Datei hinzu. Kompilieren Sie beispielsweise Ihre MyFirstConnector-Klasse und fügen Sie sie einer .jar-Datei mit dem Namen MyFirstConnector.jar hinzu. 5. Klicken Sie auf Tools > Systemkonfiguration > System > Klassenladeprogramm. 56 © Copyright IBM Corp. 2011, 2016 6. Fügen Sie Ihren ClassLoader-Datensatz hinzu. Fügen Sie beispielsweise Ihren ClassLoader-Datensatz mit dem Namen MyFirstConnector hinzu. 7. Fügen Sie im Datensatz eine Ressourcendatei hinzu, damit Sie Ihre Datei MyFirstConnector.jar hochladen können. 8. Speichern Sie den Datensatz. Fehlerbehebung bei erweiterten Funktionen Wenn Sie Hilfe bei der Behebung von Problemen mit Klassenladeprogrammen, Servlet-Proxys oder angepassten Connectors benötigen, ziehen Sie die folgende Liste mit Problemen, Ursachen und Problemlösungen zu Rate. Gängige Probleme mit erweiterten Funktionen Gängige Probleme mit Klassenladeprogrammen, Servlet-Proxys und angepassten Connectors können durch Aktivierung und Anpassung der Plattformprotokolle behoben werden. Plattformprotokollierung starten Aktivieren Sie in der Administratorkonsole im verwalteten Objekt Platform Logging das Debugging für die Kategorien Klassenladeprogramm und Servlet-Proxy. Diese ausführlichen Protokolle vermitteln Ihnen ein gutes Verständnis der Serveroperationen. Informationen zum Zugriff auf die Administratorkonsole und deren Verwendung finden Sie in der Veröffentlichung IBM TRIRIGA Application Platform 3 Administratorkonsole Benutzerhandbuch. Debugging von Klassenladeprogrammen und Servlet-Proxys vereinfachen Wenn Sie in der Administratorkonsole eine angepasste Kategorie zum verwalteten Objekt Platform Logging hinzufügen möchten, fügen Sie die angepasste Kategorie zur Datei CustomLogCategories.xml hinzu und starten Sie dann den Server erneut. Die Datei CustomLogCategories.xml befindet sich im Ordner Installationsverzeichnis/config. Diese Methode ist die bevorzugte Methode, weil Sie die Festlegung nur ein einziges Mal treffen müssen. Wenn der Server erneut gestartet wird, können Sie das Debugging wieder aktivieren, indem Sie die entsprechende Option für Ihre angepasste Kategorie auswählen. .jar-Dateien werden nicht wie erwartet implementiert Fügen Sie einem ClassLoader-Datensatz nicht mehrere Instanzen derselben .jar-Datei hinzu, z. B. eine direkt hinzugefügte und eine, die in einer komprimierten Datei enthalten ist. In diesem Fall ist die Instanz der .jar-Datei, die geladen wird, nicht vorhersehbar. Kapitel 4. Connectorfunktionen erweitern 57 58 © Copyright IBM Corp. 2011, 2016 Bemerkungen Die vorliegenden Informationen wurden für Produkte und Services entwickelt, die auf dem deutschen Markt angeboten werden. IBM stellt dieses Material möglicherweise auch in anderen Sprachen zur Verfügung. Für den Zugriff auf das Material in einer anderen Sprache kann eine Kopie des Produkts oder der Produktversion in der jeweiligen Sprache erforderlich sein. Möglicherweise bietet IBM die in dieser Dokumentation beschriebenen Produkte, Services oder Funktionen in anderen Ländern nicht an. Informationen über die gegenwärtig im jeweiligen Land verfügbaren Produkte und Services sind beim zuständigen IBM Ansprechpartner erhältlich. Hinweise auf IBM Lizenzprogramme oder andere IBM Produkte bedeuten nicht, dass nur Programme, Produkte oder Services von IBM verwendet werden können. Anstelle der IBM Produkte, Programme oder Services können auch andere, ihnen äquivalente Produkte, Programme oder Services verwendet werden, solange diese keine gewerblichen oder anderen Schutzrechte von IBM verletzen. Die Verantwortung für den Betrieb von Produkten, Programmen und Services anderer Anbieter liegt beim Kunden. Für in diesem Handbuch beschriebene Erzeugnisse und Verfahren kann es IBM Patente oder Patentanmeldungen geben. Mit der Auslieferung dieses Handbuchs ist keine Lizenzierung dieser Patente verbunden. Lizenzanforderungen sind schriftlich an folgende Adresse zu richten (Anfragen an diese Adresse müssen auf Englisch formuliert werden): IBM Director of Licensing IBM Europe, Middle East & Africa Tour Descartes 2, avenue Gambetta 92066 Paris La Defense France Trotz sorgfältiger Bearbeitung können technische Ungenauigkeiten oder Druckfehler in dieser Veröffentlichung nicht ausgeschlossen werden. Die hier enthaltenen Informationen werden in regelmäßigen Zeitabständen aktualisiert und als Neuausgabe veröffentlicht. IBM kann ohne weitere Mitteilung jederzeit Verbesserungen und/ oder Änderungen an den in dieser Veröffentlichung beschriebenen Produkten und/ oder Programmen vornehmen. Verweise in diesen Informationen auf Websites anderer Anbieter werden lediglich als Service für den Kunden bereitgestellt und stellen keinerlei Billigung des Inhalts dieser Websites dar. Das über diese Websites verfügbare Material ist nicht Bestandteil des Materials für dieses IBM Produkt. Die Verwendung dieser Websites geschieht auf eigene Verantwortung. Werden an IBM Informationen eingesandt, können diese beliebig verwendet werden, ohne dass eine Verpflichtung gegenüber dem Einsender entsteht. Lizenznehmer des Programms, die Informationen zu diesem Produkt wünschen mit der Zielsetzung: (i) den Austausch von Informationen zwischen unabhängig voneinander erstellten Programmen und anderen Programmen (einschließlich des vorliegenden Programms) sowie (ii) die gemeinsame Nutzung der ausgetauschten Informationen zu ermöglichen, wenden sich an folgende Adresse: © Copyright IBM Corp. 2011, 2016 59 IBM Director of Licensing IBM Corporation North Castle Drive, MD-NC119 Armonk, NY 10504-1785 USA Die Bereitstellung dieser Informationen kann unter Umständen von bestimmten Bedingungen - in einigen Fällen auch von der Zahlung einer Gebühr - abhängig sein. Die Lieferung des in diesem Dokument beschriebenen Lizenzprogramms sowie des zugehörigen Lizenzmaterials erfolgt auf der Basis der IBM Rahmenvereinbarung bzw. der Allgemeinen Geschäftsbedingungen von IBM, der IBM Internationalen Nutzungsbedingungen für Programmpakete oder einer äquivalenten Vereinbarung. Die zitierten Leistungsdaten und Clientbeispiele dienen lediglich der Verdeutlichung. Die tatsächlichen Ergebnisse können je nach Konfiguration und Betriebsbedingungen variieren. Alle Informationen zu Produkten anderer Anbieter stammen von den Anbietern der aufgeführten Produkte, deren veröffentlichten Ankündigungen oder anderen allgemein verfügbaren Quellen. IBM hat diese Produkte nicht getestet und kann daher keine Aussagen zu Leistung, Kompatibilität oder anderen Merkmalen machen. Fragen zu den Leistungsmerkmalen von Produkten anderer Anbieter sind an den jeweiligen Anbieter zu richten. Aussagen über Pläne und Absichten von IBM unterliegen Änderungen oder können zurückgenommen werden und repräsentieren nur die Ziele von IBM. Diese Veröffentlichung enthält Beispiele für Daten und Berichte des alltäglichen Geschäftsablaufs. Sie sollen nur die Funktionen des Lizenzprogramms illustrieren und können Namen von Personen, Firmen, Marken oder Produkten enthalten. Alle diese Namen sind frei erfunden; Ähnlichkeiten mit tatsächlichen Namen und Adressen sind rein zufällig. COPYRIGHTLIZENZ: Diese Veröffentlichung enthält Beispielanwendungsprogramme, die in Quellensprache geschrieben sind und Programmiertechniken in verschiedenen Betriebsumgebungen veranschaulichen. Sie dürfen diese Beispielprogramme kostenlos kopieren, ändern und verteilen, wenn dies zu dem Zweck geschieht, Anwendungsprogramme zu entwickeln, zu verwenden, zu vermarkten oder zu verteilen, die mit der Anwendungsprogrammierschnittstelle für die Betriebsumgebung konform sind, für die diese Beispielprogramme geschrieben werden. Diese Beispiele wurden nicht unter allen denkbaren Bedingungen getestet. Daher kann IBM die Zuverlässigkeit, Wartungsfreundlichkeit oder Funktion dieser Programme weder zusagen noch gewährleisten. Die Beispielprogramme werden ohne Wartung (auf "as-is"-Basis) und ohne jegliche Gewährleistung zur Verfügung gestellt. IBM übernimmt keine Haftung für Schäden, die durch die Verwendung der Beispielprogramme entstehen. Kopien oder Teile der Beispielprogramme bzw. daraus abgeleiteter Code müssen folgenden Copyrightvermerk beinhalten: © (Name Ihrer Firma) (Jahr). Teile des vorliegenden Codes wurden aus Beispielprogrammen der IBM Corporation abgeleitet. © Copyright IBM Corp._Jahr/Jahre angeben_. 60 © Copyright IBM Corp. 2011, 2016 Marken IBM, das IBM Logo und ibm.com sind Marken oder eingetragene Marken der IBM Corporation in den USA und/oder anderen Ländern. Weitere Produkt- und Servicenamen können Marken von IBM oder anderen Unternehmen sein. Eine aktuelle Liste der IBM Marken finden Sie auf der Webseite "Copyright and trademark information" unter www.ibm.com/legal/copytrade.shtml. Java und alle auf Java basierenden Marken und Logos sind Marken oder eingetragene Marken der Oracle Corporation und/oder ihrer verbundenen Unternehmen. Linux ist eine Marke von Linus Torvalds in den USA und/oder anderen Ländern. Microsoft, Windows, Windows NT und das Windows-Logo sind Marken der Microsoft Corporation in den USA und/oder anderen Ländern. UNIX ist eine eingetragene Marke von The Open Group in den USA und anderen Ländern. Weitere Produkt- und Servicenamen können Marken von IBM oder anderen Unternehmen sein. Nutzungsbedingungen für die Produktdokumentation Die Berechtigung zur Nutzung der Veröffentlichungen wird Ihnen auf Basis der folgenden Bedingungen gewährt. Anwendbarkeit Diese Bedingungen sind eine Ergänzung der Nutzungsbedingungen auf der IBM Website. Persönliche Nutzung Sie dürfen diese Veröffentlichungen für Ihre persönliche, nicht kommerzielle Nutzung unter der Voraussetzung vervielfältigen, dass alle Eigentumsvermerke erhalten bleiben. Sie dürfen diese Veröffentlichungen oder Teile der Veröffentlichungen ohne ausdrückliche Genehmigung von IBM nicht weitergeben, anzeigen oder abgeleitete Werke davon erstellen. Kommerzielle Nutzung Sie dürfen diese Veröffentlichungen nur innerhalb Ihres Unternehmens und unter der Voraussetzung, dass alle Eigentumsvermerke erhalten bleiben, vervielfältigen, weitergeben und anzeigen. Sie dürfen diese Veröffentlichungen oder Teile der Veröffentlichungen ohne ausdrückliche Genehmigung von IBM außerhalb Ihres Unternehmens weder vervielfältigen, weitergeben oder anzeigen noch abgeleitete Werke davon erstellen. Rechte Abgesehen von den hier gewährten Berechtigungen erhalten Sie keine weiteren Berechtigungen, Lizenzen oder Rechte (veröffentlicht oder stillschweigend) in Bezug auf die Veröffentlichungen oder darin enthaltene Informationen, Daten, Software oder geistiges Eigentum. Bemerkungen 61 IBM behält sich das Recht vor, die hierin gewährten Berechtigungen nach eigenem Ermessen zurückzuziehen, wenn sich die Nutzung der Veröffentlichungen für IBM als nachteilig erweist oder wenn die obigen Nutzungsbestimmungen nicht genau befolgt werden. Sie dürfen diese Informationen nur in Übereinstimmung mit allen anwendbaren Gesetzen und Verordnungen, einschließlich aller US-amerikanischen Exportgesetze und Verordnungen, herunterladen und exportieren. IBM übernimmt keine Gewährleistung für den Inhalt dieser Informationen. Diese Veröffentlichungen werden auf der Grundlage des gegenwärtigen Zustands (auf "as-is"-Basis) und ohne eine ausdrückliche oder stillschweigende Gewährleistung für die Handelsüblichkeit, die Verwendungsfähigkeit für einen bestimmten Zweck oder die Freiheit von Rechten Dritter zur Verfügung gestellt. IBM Online-Datenschutzerklärung IBM Softwareprodukte, einschließlich Software as a Service-Lösungen ("Softwareangebote"), können Cookies oder andere Technologien verwenden, um Informationen zur Produktnutzung zu erfassen, die Endbenutzererfahrung zu verbessern und Interaktionen mit dem Endbenutzer anzupassen oder zu anderen Zwecken. In vielen Fällen werden von den Softwareangeboten keine personenbezogenen Daten erfasst. Einige der IBM Softwareangebote können Sie jedoch bei der Erfassung personenbezogener Daten unterstützen. Wenn dieses Softwareangebot Cookies zur Erfassung personenbezogener Daten verwendet, sind nachfolgend nähere Informationen über die Verwendung von Cookies durch dieses Angebot zu finden. Dieses Softwareangebot verwendet keine Cookies oder andere Technologien zur Erfassung personenbezogener Daten. Wenn die für dieses Softwareangebot genutzten Konfigurationen Sie als Kunde in die Lage versetzen, personenbezogene Daten von Endbenutzern über Cookies und andere Technologien zu erfassen, müssen Sie sich zu allen gesetzlichen Bestimmungen in Bezug auf eine solche Datenerfassung, einschließlich aller Mitteilungspflichten und Zustimmungsanforderungen, rechtlich beraten lassen. Weitere Informationen zur Nutzung verschiedener Technologien, einschließlich Cookies, für diese Zwecke finden Sie in in Schwerpunkten der IBM Online-Datenschutzerklärung unter http://www.ibm.com/privacy in der "IBM Online-Datenschutzerklärung" unter http://www.ibm.com/privacy/details im Abschnitt "Cookies, Web-Beacons und sonstige Technologien" und unter "IBM Software Products and Software-as-a-Service Privacy Statement" (http://www.ibm.com/software/info/product-privacy/). 62 © Copyright IBM Corp. 2011, 2016 Bemerkungen 63 IBM® Gedruckt in Deutschland