20.01.2015 Aufrufe

X4 Benutzerhandbuch - SoftProject GmbH

X4 Benutzerhandbuch - SoftProject GmbH

X4 Benutzerhandbuch - SoftProject GmbH

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>X4</strong> <strong>Benutzerhandbuch</strong><br />

<strong>X4</strong> Enterprise Service Bus Version 4.0<br />

Copyright © 2002 – 2009, <strong>SoftProject</strong>, Alle Rechte vorbehalten


<strong>X4</strong> <strong>Benutzerhandbuch</strong>: <strong>X4</strong> Enterprise Service Bus Version 4.0<br />

Die in dieser Dokumentation enthaltenen Informationen und die zugehörigen Programme können ohne<br />

besondere Ankündigung geändert werden.<br />

© <strong>SoftProject</strong> <strong>GmbH</strong> 2002–2009. Alle Rechte vorbehalten.<br />

Diese Dokumentation und die zugehörigen Programme dürfen ohne schriftliche Zustimmung der <strong>SoftProject</strong><br />

<strong>GmbH</strong> weder ganz noch teilweise kopiert, reproduziert, verändert oder in irgendeine elektronische oder<br />

maschinenlesbare Form umgewandelt werden.<br />

Alle Warenzeichen sind Warenzeichen der jeweiligen Eigentümer.<br />

<strong>SoftProject</strong> <strong>GmbH</strong><br />

Am Erlengraben 3<br />

D-76275 Ettlingen<br />

Telefon: +49 (0)7243 / 56 175-0<br />

Fax: +49 (0)7243 / 56 175-199<br />

E-Mail: info@softproject.de<br />

Website: http://www.softproject.de


Inhaltsverzeichnis<br />

Über diese Dokumentation ............................................................................................................. vii<br />

1. Zweck dieser Dokumentation .............................................................................................. vii<br />

2. Zielgruppe ............................................................................................................................. vii<br />

3. Darstellungs-Konventionen ................................................................................................... vii<br />

4. Weiterführende Quellen ....................................................................................................... viii<br />

1. Einführung .................................................................................................................................... 1<br />

1.1. Enterprise Application Integration ...................................................................................... 1<br />

1.2. Business Process Management ........................................................................................... 1<br />

1.3. Application Server .............................................................................................................. 1<br />

1.4. <strong>X4</strong> Enterprise Service Bus .................................................................................................. 1<br />

1.5. Prozesse in <strong>X4</strong> .................................................................................................................... 3<br />

1.6. Adapter in <strong>X4</strong> ..................................................................................................................... 4<br />

1.7. <strong>X4</strong> und XML ....................................................................................................................... 4<br />

2. <strong>X4</strong> Front-End .............................................................................................................................. 5<br />

2.1. Mit dem <strong>X4</strong> Server verbinden ............................................................................................ 5<br />

2.2. Rundgang durch das <strong>X4</strong> Front-End ...................................................................................... 6<br />

2.2.1. Sichten im <strong>X4</strong> Front-End ......................................................................................... 6<br />

2.2.2. Menüs ..................................................................................................................... 7<br />

2.2.3. Symbolleiste ............................................................................................................ 7<br />

2.2.4. Repository Navigator ............................................................................................... 9<br />

2.3. <strong>X4</strong> Front-End konfigurieren .............................................................................................. 10<br />

2.3.1. Adapter-Editor konfigurieren ................................................................................. 10<br />

2.3.2. Verbindung zum <strong>X4</strong> Server konfigurieren ............................................................... 11<br />

2.3.3. Prozess-Designer konfigurieren .............................................................................. 12<br />

2.3.4. Run-Modus konfigurieren ...................................................................................... 13<br />

2.3.5. Debug-Modus konfigurieren .................................................................................. 13<br />

2.3.6. XSL-Transformations-Vorschau konfigurieren ......................................................... 14<br />

2.4. <strong>X4</strong> Front-End aktualisieren ............................................................................................... 16<br />

2.4.1. Eclipse-Plugin aktualisieren ................................................................................... 16<br />

2.4.2. Standalone-Version aktualisieren ........................................................................... 17<br />

3. Werkzeuge im <strong>X4</strong> Front-End ................................................................................................... 19<br />

3.1. Prozess-Designer ................................................................................................................ 19<br />

3.1.1. Übersicht über den Prozess-Designer ..................................................................... 19<br />

3.1.2. Zeichnungsfläche ................................................................................................... 20<br />

3.1.3. Properties-Sicht ..................................................................................................... 21<br />

3.1.4. Palette ................................................................................................................... 21<br />

3.1.5. Debug-Symbolleiste ............................................................................................... 23<br />

3.1.6. Run/Debug Console-Sicht ...................................................................................... 23<br />

3.2. Adapter-Editor .................................................................................................................. 24<br />

3.3. SQL-Editor ........................................................................................................................ 26<br />

3.4. Datenbankverbindungs-Editor ........................................................................................... 27<br />

3.5. Condition Editor ............................................................................................................... 28<br />

3.6. XSL-Editor .......................................................................................................................... 30


<strong>X4</strong> <strong>Benutzerhandbuch</strong><br />

iv<br />

3.6.1. Überblick über den XSL-Editor ............................................................................... 31<br />

3.6.2. Quelldokumentbereich ........................................................................................... 31<br />

3.6.3. Verknüpfungsbereich .............................................................................................. 32<br />

3.6.4. Stylesheet-Bereich ................................................................................................. 33<br />

3.6.5. Kontextmenü im Stylesheet-Bereich ...................................................................... 34<br />

3.7. XML-Editor ........................................................................................................................ 35<br />

3.7.1. Übersicht über den XML-Editor ............................................................................. 35<br />

3.7.2. Design-Ansicht des XML-Editors ............................................................................ 35<br />

3.7.3. Source-Ansicht des XML-Editors ............................................................................ 36<br />

3.8. Text-Editor ....................................................................................................................... 37<br />

3.9. BPM-Designer .................................................................................................................. 37<br />

3.9.1. BPM-Designer ......................................................................................................... 37<br />

3.9.2. Prozess-Bausteine und Symbole ............................................................................ 38<br />

3.10. <strong>X4</strong> Business Activity Monitoring (BAM) .......................................................................... 39<br />

4. Prozesse modellieren .................................................................................................................. 41<br />

4.1. Prozess-Bausteine ............................................................................................................ 41<br />

4.1.1. Prozessfluss-Bausteine ............................................................................................ 41<br />

4.1.2. Daten-Bausteine ..................................................................................................... 41<br />

4.1.3. Modul-Bausteine ..................................................................................................... 42<br />

4.1.4. Zeichnungselemente ............................................................................................... 42<br />

4.2. Elemente im Repository verwalten ................................................................................... 42<br />

4.2.1. Projekte in <strong>X4</strong> ........................................................................................................ 43<br />

4.2.2. Projekt öffnen und schließen ................................................................................. 43<br />

4.2.3. Neues Projekt anlegen ........................................................................................... 43<br />

4.2.4. Neuen Prozess oder Prozess-Baustein anlegen ....................................................... 43<br />

4.2.5. Prozesse und Bausteine in verschiedenen Ansichten öffnen ................................... 44<br />

4.2.6. Prozesse und Bausteine importieren und exportieren .............................................. 44<br />

4.3. Prozess-Bausteine verwenden ............................................................................................ 45<br />

4.3.1. Start, Stop und Übergang (Transition) einfügen ..................................................... 45<br />

4.3.2. Transfer-Adapter anlegen und verwenden ............................................................. 46<br />

4.3.3. Funktions-Adapter-Baustein anlegen und verwenden ............................................ 47<br />

4.3.4. XML-Dokument erstellen ....................................................................................... 48<br />

4.3.5. XSL-Mapping anlegen und verwenden ................................................................... 49<br />

4.3.6. Variable verwenden ............................................................................................... 51<br />

4.3.7. Subprozess anlegen ............................................................................................... 52<br />

4.3.8. Gabelung (Fork) und Zusammenführung (Join) einfügen ........................................ 52<br />

4.3.9. Daten mit Merge zusammenführen ....................................................................... 53<br />

4.3.10. Bedingungen und Verzweigungen mit Condition erstellen .................................... 54<br />

4.3.11. Datenbank-Verbindung herstellen ........................................................................ 56<br />

4.4. Prozess-Bausteine parametrieren ..................................................................................... 58<br />

4.4.1. Parametrierungs-Möglichkeiten ............................................................................. 58<br />

4.4.2. Benutzerdefinierte Parameter setzen ..................................................................... 59<br />

4.4.3. Dynamische Parameter erzeugen ........................................................................... 60<br />

4.4.4. Statusinformationen mit ConditionState erzeugen ................................................ 62<br />

4.5. Prozesse debuggen und ausführen ..................................................................................... 63<br />

4.5.1. Prozess debuggen (Debug-Modus) ......................................................................... 63


<strong>X4</strong> <strong>Benutzerhandbuch</strong><br />

v<br />

4.5.2. Prozess ausführen (Run-Modus) ............................................................................ 64<br />

4.5.3. Prozess mit Scheduler zeitgesteuert ausführen ...................................................... 65<br />

5. Neu in <strong>X4</strong> Version 4.0 ............................................................................................................. 67<br />

5.1. <strong>X4</strong> Server ......................................................................................................................... 67<br />

5.1.1. Neue Funktionen ..................................................................................................... 67<br />

5.1.2. Behobene Fehler ..................................................................................................... 69<br />

5.1.3. Bekannte Probleme ................................................................................................. 69<br />

5.1.4. Änderungen ............................................................................................................. 69<br />

5.2. <strong>X4</strong> Front-End .................................................................................................................... 69<br />

5.2.1. <strong>X4</strong> Front-End auf Eclipse-Basis ............................................................................. 70<br />

5.2.2. Refactoring: Elemente im Repository dynamisch bearbeiten ................................... 70<br />

5.2.3. Prozess-Dokumentation automatisch erzeugen ...................................................... 74<br />

5.2.4. Vorlagen für Prozesse und Prozess-Bausteine verwenden ...................................... 76<br />

5.2.5. Weitere Verbessungen im <strong>X4</strong> Front-End .................................................................. 77<br />

A. Tastenkombinationen ................................................................................................................ 79<br />

Prozess-Designer ..................................................................................................................... 79<br />

XSL-Editor ............................................................................................................................... 80<br />

Index ................................................................................................................................................ 83


Über diese Dokumentation<br />

In diesem Abschnitt erfahren Sie, an wen sich diese Dokumentation richtet, welchen<br />

Zweck sie hat und welche Konventionen und Symbole verwendet werden. Außerdem wird<br />

auf weiterführende Quellen verwiesen.<br />

Zweck dieser Dokumentation<br />

Zielgruppe<br />

Diese Dokumentation macht Sie mit den grundlegenden Prinzipien der Modellierung von<br />

Geschäftsprozessen mit <strong>X4</strong> vertraut und erläutert die Bedienung des <strong>X4</strong> Front-Ends. Eine<br />

Adapter-Referenz für Entwickler finden Sie im englischsprachigen <strong>X4</strong> Reference Manual.<br />

Diese Dokumentation richtet sich an Anwender von <strong>X4</strong>, die mithilfe des <strong>X4</strong> Front-Ends<br />

in ihrer Eclipse-Entwicklungsumgebung Geschäftsprozesse grafisch modellieren und<br />

<strong>X4</strong>-Adapter konfigurieren sowie Datenstrukturen mittels XSL-Mappings transformieren<br />

möchten.<br />

Dazu werden neben detailliertem fachlichem Wissen der Daten und Arbeitsbläufe auch<br />

grundsätzliches Wissen über XML sowie Kenntnisse in XSLT und XPath benötigt.<br />

Darstellungs-Konventionen<br />

Kennzeichnungen<br />

Folgende Kennzeichnungen werden in dieser Dokumentation verwendet:<br />

• kursiv: für neue Begriffe und Hervorhebungen<br />

• Fett: für Oberflächen-Elemente wie Schaltflächen, Menüs oder Beschriftungen von<br />

Elementen<br />

• Feste Breite: für Code-Beispiele, Dateinamen etc.<br />

Symbole<br />

Folgende Symbole werden in dieser Dokumentation verwendet:<br />

ACHTUNG: Warnung oder (Daten-) Sicherheitshinweis<br />

Hinweis, Erinnerung, Verweis oder allgemeine Anmerkung<br />

Tipp oder Hilfestellung


Über diese Dokumentation<br />

viii<br />

Weiterführende Quellen<br />

Weitere Dokumentation zu <strong>X4</strong> finden Sie im Internet unter http://www.softproject.de/<br />

download:<br />

• <strong>X4</strong> Reference Manual: Englischsprachiges Referenzhandbuch zu den <strong>X4</strong>-Adaptern,<br />

Reports, <strong>X4</strong>-URL-Protokollen, XSLT-Strukturen sowie XPath-Operatoren und -<br />

Funktionen<br />

• <strong>X4</strong> Adapter Development Kit: Englischsprachiges Handbuch zum Entwickeln von<br />

individuellen <strong>X4</strong>-Adaptern.<br />

• <strong>X4</strong> BAM User Manual: Englischsprachige Dokumentation zum webbasierten <strong>X4</strong>-Modul<br />

Business Activity Monitoring (<strong>X4</strong> BAM).


1. Einführung<br />

1<br />

1 Einführung<br />

In diesem Abschnitt erhalten Sie einen Überblick über die Grundbegriffe des Business<br />

Process Managements mit <strong>X4</strong>.<br />

1.1 Enterprise Application Integration<br />

Unter Enterprise Application Integration (EAI), zu Deutsch: unternehmensweite<br />

Integration von Geschäftsfunktionen, versteht man ein Konzept zum Zusammenführen<br />

von verschiedenen Software-Anwendungen, die innerhalb eines Unternehmens auf<br />

unterschiedlichen Plattformen verteilt sind.<br />

1.2 Business Process Management<br />

Unter Business Process Management (BPM), zu Deutsch: Verwaltung von<br />

Geschäftsprozessen, versteht man u. a. die Analyse, Modellierung, Umsetzung und<br />

Dokumentation von Aufgaben, die sich innerhalb eines Unternehmens wiederholen. Das<br />

kann beispielsweise die Abwicklung einer Bestellung sein.<br />

Das Ziel von BPM ist, wiederkehrende Prozesse effizient zu gestalten und sie – wenn<br />

möglich – zu automatisieren. So laufen Prozesse schneller, mit weniger Fehlern und damit<br />

kosteneffektiver ab.<br />

1.3 Application Server<br />

Heutzutage werden Geschäftsprozesse elektronisch abgebildet und auf sogenannten<br />

Application Servern (Anwendungs-Servern) ausgeführt. Der Application Server bietet eine<br />

standardisierte Plattform, auf der Prozesse ausgeführt werden. Häufig wird dazu die Java-<br />

Plattform J2EE verwendet. Für Application Server gibt es verschiedene Produkte, etwa<br />

die weit verbreitete Open-Source-Lösung JBoss Application Server oder kommerzielle<br />

Lösungen wie IBM Websphere und BEA Weblogic.<br />

Applikationen bestehen bei J2EE aus einer Reihe von Klassenbibliotheken in Form von<br />

Java-Archiven mit der Dateinamensendung .jar und aus Enterprise-Application-Archiven<br />

(Dateinamensendung .ear), die vollständige Java-Anwendungen enthalten können.<br />

1.4 <strong>X4</strong> Enterprise Service Bus<br />

Der <strong>X4</strong> Enterprise Service Bus (kurz: <strong>X4</strong>) ist eine integrierte Plattform zur Enterprise<br />

Application Integration und dient als Kommunikationsschnittstelle zwischen<br />

unterschiedlichen Technologien, Standards, Datenformen und Protokollen in Unternehmen.<br />

Geschäftsabläufe und Datenoperationen werden dabei in sogenannten Prozessen<br />

abgewickelt. <strong>X4</strong> bietet zudem die Möglichkeit, Aktivitäten in Logs zu speichern und<br />

automatisch generierte Reports zu erzeugen.<br />

Vereinfacht betrachtet ist <strong>X4</strong> ist eine Sammlung von Datenanbindungen bzw. Adaptern,<br />

beispielsweise an den Datenaustausch-Standard EDIFACT. <strong>X4</strong> kann als Middleware<br />

fungieren, bietet jedoch deutlich mehr Möglichkeiten.


1. Einführung<br />

2<br />

Abbildung 1.1: <strong>X4</strong> Enterprise Service Bus<br />

Server und Clients<br />

Unterschieden werden muss zwischen dem <strong>X4</strong> Server und dem <strong>X4</strong> Front-End:<br />

• <strong>X4</strong> Server: Technisch gesehen ist der <strong>X4</strong> Server eine Anwendung, die auf einem<br />

Application Server wie beispielsweise JBoss läuft. Der <strong>X4</strong> Server führt die Prozesse aus.<br />

Der <strong>X4</strong> Server enthält das <strong>X4</strong> Repository, in welchem sämtliche Projekte, Prozesse und<br />

Konfigurationen gespeichert sind.<br />

• <strong>X4</strong> Front-End: Mit dem <strong>X4</strong> Front-End lassen sich Geschäftsprozesse entwickeln,<br />

grafisch darstellen und steuern. Das <strong>X4</strong> Front-End enthält neben einer Prozess-Design-<br />

Komponente u.a. ein Werkzeug zum Mapping von Datenstrukturen mittels XSLT. Das<br />

<strong>X4</strong> Front-End basiert ab Version 4.0 auf der freien Entwicklungsumgebung Eclipse.<br />

Zusätzlich können über verschiedene Web-Oberflächen auf Prozesse und Daten<br />

zugegriffen werden. Dazu zählen zum einen Komponenten wie <strong>X4</strong> BAM (Business Activity<br />

Monitoring) zum Überwachen von <strong>X4</strong>-Prozessen, zum anderen aber auch anwendungsund<br />

branchenspezifische Oberflächen wie der <strong>X4</strong> Geolocator.<br />

Entwurfs-Modus<br />

Mit dem <strong>X4</strong> Front-End können Sie sowohl mit als auch ohne Verbindung zum Repository<br />

arbeiten. Normalerweise besteht eine Verbindung zum <strong>X4</strong> Server und Sie arbeiten auf dem<br />

Server-Repository.<br />

Mit dem Entwurfs-Modus können Sie jedoch auch ohne Verbindung zum <strong>X4</strong> Server mit<br />

dem Prozesse modellieren und XSLT-Mappings entwerfen.


1. Einführung<br />

3<br />

1.5 Prozesse in <strong>X4</strong><br />

Als zentraler Bestandteil zur EAI dienen in <strong>X4</strong> die Prozesse. Sie enthalten die für die<br />

jeweilige Integrationsaufgabe notwendigen Adapter, Struktur-Umwandlungen (XSLT-<br />

Mappings) und bilden die erforderliche Logik ab, etwa in Form vom Bedingungen und<br />

Schleifen. So ist es möglich, aus wiederverwendbaren Bausteinen individuelle XMLbasierte<br />

Integrationslösungen zu entwickeln.<br />

Technische Prozesse<br />

Jeder Schritt eines Prozesses wird durch einen Prozess-Baustein (beispielsweise ein<br />

Adapter oder ein XSLT-Mapping) repräsentiert. Diese Prozess-Bausteine werden im <strong>X4</strong><br />

Front-End als Symbole in einem Prozessdiagramm dargestellt und grafisch bearbeitet. Bei<br />

einem fertigen Prozess handelt es sich um eine voll funktionsfähige Integrationslösung,<br />

die auf dem <strong>X4</strong> Server bei entsprechenden Ereignissen (beispielsweise bei einer Bestellung)<br />

oder zeitgesteuert ausgeführt wird.<br />

Abbildung 1.2: Beispiel eines Prozesses in <strong>X4</strong><br />

Spricht man von <strong>X4</strong>-Prozessen, so handelt es sich zumeist um rein technische Prozesse,<br />

beispielsweise dem Datenaustausch zwischen einer Web-Anwendung und einer MSSQL-<br />

Datenbank mit anschließender Fakturierung in einem PDF-Dokument.<br />

Fachliche Prozesse (Business Process Modeling)<br />

Die sogenannten BPM-Prozesse bilden die Arbeitsabläufe im Unternehmen ab. In dieser<br />

übergeordneten Perspektive können technische Prozesse mit fachlichen Arbeitsabläufen<br />

im Unternehmen verbunden werden. Mit dem BPM-Designer (BPM) lassen sich im <strong>X4</strong><br />

Front-End auch fachliche Prozesse modellieren und gleichzeitig Prozessdiagramme gemäß<br />

der BPMN-Spezifikation erstellen.<br />

BPM-Prozesse können technische Prozesse in Form von Subprozessen einbinden.<br />

Außerdem können im BPM-Designer verschiedene Arten von Gateways (logische<br />

Verzweigungen), Datenobjekte (z.B. XML-Dokumente), Timer und Counter in BPM-<br />

Prozessen angeordnet werden.


1. Einführung<br />

4<br />

Umsetzung in <strong>X4</strong><br />

Ein Prozess besteht aus einer XML-Datei, die mit der Dateinamensendung .wrf<br />

(technischer Prozess) oder .bpm (fachlicher Prozess) im <strong>X4</strong> Repository abgelegt wird.<br />

Sämtliche Datenelemente werden lediglich referenziert. Der <strong>X4</strong> Server interpretiert<br />

die ausgeführten <strong>X4</strong>-Prozesse gemäß den in der Server-Engine hinterlegten<br />

Verarbeitungsregeln und führt die Prozesse aus.<br />

1.6 Adapter in <strong>X4</strong><br />

Einen modularen Ansatz verfolgt <strong>X4</strong> mit den sogenannten Adaptern, die als Bausteine in<br />

<strong>X4</strong>-Prozesse integriert werden. Diese stellen Datenanbindungen her, beispielsweise mit<br />

Oracle-Datenbanken, übertragen Daten über verschiedene Protokolle wie HTTP und JMS,<br />

oder transformieren und konvertieren verschiedene Daten und Datenformate.<br />

Hierbei wird unterschieden zwischen folgenden Arten von Adaptern:<br />

• Transfer-Adapter: Stellen Datenverbindungen über verschiedene Protokolle<br />

(beispielsweise FTP) her.<br />

• Funktions-Adapter: Bieten Zusatzfunktionen u.a. zur Datenmanipulation,<br />

beispielsweise zum Einlesen von Daten im CSV-Format oder zur<br />

Zeichensatzumwandlung.<br />

• Prozess-Vorlagen: Bei diesen häufig ebenfalls als "Adapter" bezeichneten<br />

Komponenten handelt es sich um Prozesse, um Daten auszulesen und zu manipulieren,<br />

die in genormten Formaten und Systemarchitekturen gespeichert sind, beispielsweise<br />

eine EDIFACT-Anbindung. Diese Prozess-Vorlagen müssen lediglich an die<br />

Gegebenheiten angepasst werden.<br />

<strong>X4</strong> stellt bereits zahlreiche einsatzbereite Adapter zur Verfügung, die im Prozess-Designer<br />

nur noch ausgewählt und konfiguriert werden müssen.<br />

1.7 <strong>X4</strong> und XML<br />

Mithilfe des <strong>X4</strong> Adapter Development Kit (ADK) lassen sich zusätzlich<br />

benötigte Adapter entwickeln. Das ADK finden Sie im Internet unter http://<br />

www.softproject.de/download.<br />

Die <strong>X4</strong>-Plattform arbeitet auf Basis von XML-Technologie (eXtensible Markup Language).<br />

Dieser W3C-Standard ist ideal zum Austausch von strukturierten Daten geeignet.<br />

Daten werden in <strong>X4</strong> daher in XML abgebildet und mittels XSLT (Extensible Stylesheet<br />

Language Transformation) verarbeitet. Damit unterscheidet sich <strong>X4</strong> von anderen EAI-<br />

Lösungen, die lediglich zwischen Formaten konvertieren; <strong>X4</strong> hingegen kann über XML mit<br />

angebundenen Systemen in Echtzeit und transaktionssicher kommunzieren.<br />

Eine Einführung in die XML-Technologie finden Sie im Internet beispielsweise unter http://<br />

de.selfhtml.org/xml/.


2. <strong>X4</strong> Front-End<br />

5<br />

2 <strong>X4</strong> Front-End<br />

In diesem Abschnitt erhalten Sie einen Überblick über das Eclipse-Front-End von <strong>X4</strong>. Mit<br />

dem <strong>X4</strong> Front-End können Sie komplexe Geschäftsprozesse modellieren und verwalten.<br />

2.1 Mit dem <strong>X4</strong> Server verbinden<br />

Um Prozesse mit <strong>X4</strong> modellieren und verwalten zu können, muss sich das <strong>X4</strong> Front-End<br />

zunächst mit dem <strong>X4</strong> Server und dem Repository verbinden. Das Front-End muss sich nicht<br />

notwendigerweise auf demselben Computer wie der Server befinden.<br />

Benutzernamen und Passwörter werden im <strong>X4</strong> Server-Ordner in <strong>X4</strong>DB/0/<br />

tblAccess.xml verwaltet.<br />

1. Folgende Voraussetzungen sicherstellen:<br />

• <strong>X4</strong> Server ist installiert und gestartet (siehe <strong>X4</strong> Installation Guide).<br />

• Eclipse und das <strong>X4</strong> Front-End sind installiert und gestartet (siehe <strong>X4</strong> Installation<br />

Guide).<br />

2.<br />

Im Repository Navigator auf Connect to remote repository klicken, um den<br />

Connection Manager zu öffnen.<br />

3. Verbindungsdaten eingeben:<br />

• In Server die Adresse des <strong>X4</strong> Servers eingeben.<br />

• In Instance die Bezeichnung der zu startenden <strong>X4</strong>-Instanz eingeben.<br />

• In Protocol je nach Verbindungsart HTTP oder HTTPS wählen.<br />

• Wenn Sie einen anderen Port als die Standard-Ports für HTTP oder HTTPS verwenden:<br />

in Port die gewünschte Port-Nummer eingeben.


2. <strong>X4</strong> Front-End<br />

6<br />

Über Proxy Settings können Sie die Eclipse-Standardeinstellungen zu Proxy-<br />

Servern und Internet-Verbindung bearbeiten.<br />

4. Anmeldedaten einstellen:<br />

• In User den Benutzernamen eingeben.<br />

• In Password das zugehörige Passwort eingeben.<br />

• Wenn Sie dieses Passwort speichern möchten: Remember Password: wählen.<br />

Über Add können Sie die soeben konfigurierte Verbindung in Connection<br />

Profiles speichern. Dort können Sie verschiedene Verbindungen zu<br />

unterschiedlichen <strong>X4</strong> Servern und Instanzen speichern (siehe Abschnitt 2.3.2,<br />

„Verbindung zum <strong>X4</strong> Server konfigurieren “).<br />

5. Connect klicken, um mit dem <strong>X4</strong> Server zu verbinden.<br />

Das Repository zum angegebenen Benutzer mit allen verfügbaren Projekten wird nun<br />

geladen. Im Repository Navigator werden unter dem Projektbaum die aktuellen<br />

Anmelde- und Verbindungsdaten angezeigt.<br />

2.2 Rundgang durch das <strong>X4</strong> Front-End<br />

Wie das Eclipse-Front-End von <strong>X4</strong> aussieht, wenn eine Verbindung zum Repository<br />

aufgebaut ist, zeigt (siehe Abbildung 2.1, „Das <strong>X4</strong> Front-End in Eclipse“).<br />

Abbildung 2.1: Das <strong>X4</strong> Front-End in Eclipse<br />

2.2.1 Sichten im <strong>X4</strong> Front-End


2. <strong>X4</strong> Front-End<br />

7<br />

2.2.2 Menüs<br />

Das Front-End ist in mehrere Bereiche aufgeteilt, die in Eclipse Sichten genannt werden.<br />

• Repository Navigator: Diese Sicht enthält eine Baumstruktur des verbundenen<br />

Repositorys mit verschiedenen Elementen wie <strong>X4</strong>-Projekten, Ordnern und Dateien<br />

(siehe Abschnitt 2.2.4, „Repository Navigator “).<br />

• Editor-Bereich in der Mitte: Hier werden Prozesse, Adapter etc. zum Anzeigen und<br />

Bearbeiten in Editoren geöffnet.<br />

Die einzelnen Editoren werden in Tabs (Registerkarten) geöffnet. Im Tab wird der<br />

Dateiname des geöffneten Bausteins angezeigt. Ungespeicherte Bausteine sind mit<br />

einem * markiert.<br />

• Properties: Hier können Sie die Eigenschaften von Prozessen und von Prozess-<br />

Bausteinen anzeigen und bearbeiten, die gerade im Prozess-Designer geöffnet und<br />

markiert sind.<br />

• Palette: Dient als Werkzeugleiste. Per Drag&Drop können Sie Prozess-Bausteine und<br />

Zeichnungselemente in geöffnete Prozesse eingefügen.<br />

• Outline: Zeigt eine Baumstruktur des geöffneten Prozesses, geordnet nach Elementtyp<br />

(Prozesse, Adapter, Mappings, Dokumente etc.).<br />

• Run/Debug Console: Hier werden Log-Meldungen ausgeben und Debug-<br />

Informationen angezeigt, wenn ein Prozess auf Fehler überprüft wird.<br />

Am oberen Fensterrand befindet sich die Eclipse-Menüleiste, die folgende Menüs enthält.<br />

• File: Prozess- und Baustein-Dateien speichern, exportieren, kürzlich geöffnete<br />

Elemente öffnen.<br />

• Edit: Bearbeitungsfunktionen wie rückgängig machen/wiederherstellen, Auswahl<br />

ausschneiden/kopieren/einfügen, Markieren, Suchen und Ersetzen<br />

• View (wenn ein Prozess geöffnet ist): Raster ein- oder ausblenden<br />

• Navigate, Search und Project: Nicht für das <strong>X4</strong> Front-End relevant<br />

• <strong>X4</strong> Wizards: verschiedene Assistenten (<strong>X4</strong> Wizards) aufrufen, etwa zum Einrichten<br />

von Webservices oder Erstellen von Prozessdokumentation<br />

• Run: Nicht für das <strong>X4</strong> Front-End relevant<br />

• Window: Fenster und Perspektiven und Sichten der Eclipse-Oberfläche verwalten,<br />

Eclipse-Einstellungen bearbeiten<br />

• Help: Eclipse-Hilfe aufrufen, Plugins installieren und Software aktualisieren<br />

2.2.3 Symbolleiste<br />

Über die Symbolleiste, die sich direkt unter der Eclipse-Menüleiste befindet, können Sie<br />

verschiedene Funktionen und Anzeigeoptionen aufrufen. Nicht alle sind für das <strong>X4</strong> Front-<br />

End relevant. Einige Symbole werden zudem nur angezeigt, wenn ein Prozess im Prozess-<br />

Designer geöffnet ist.<br />

<strong>X4</strong>-Komponenten aufrufen<br />

Webservice Management: Webservice-Verwaltung aufrufen


2. <strong>X4</strong> Front-End<br />

8<br />

Bausteine anlegen und bearbeiten<br />

New: Neuen Baustein (Prozess, Adapter etc.) anlegen<br />

Save: Aktuell bearbeiteten Baustein speichern<br />

Undo: Letzten Bearbeitungsschritt rückgängig machen<br />

Redo: Rückgängig gemachten Schritt wiederherstellen<br />

Copy: Auswahl kopieren<br />

Cut: Auswahl ausschneiden<br />

Paste: Auswahl einfügen<br />

Ansicht verändern<br />

Zoom Out, Zoom In: Vergrößern, Zoom wählen, Verkleinern<br />

Back: Zuvor bearbeiteten Baustein öffnen<br />

Forward: Nächsten bearbeiteten Baustein öffnen<br />

Component Icon Size: Größe der Bausteinsymbole verändern<br />

Snap to grid: Raster einblenden und Bausteinsymbole am Raster ausrichten<br />

Prozess ausführen und debuggen<br />

Run <strong>X4</strong> Process: <strong>X4</strong>-Prozess ausführen<br />

Start Debug: <strong>X4</strong>-Prozess debuggen (Fehler anzeigen und beseitigen)<br />

Step Into: Einzelschritt ausführen und anzeigen (auch in Subprozessen)<br />

Step Over: Prozess-Schritt ausführen (ohne Schritte des Subprozess anzuzeigen)<br />

Step Return: aus Subprozess herausspringen<br />

Suspend: Debugging-Vorgang anhalten<br />

Resume: Debugging fortsetzen<br />

Terminate: Debugging beenden<br />

Toggle Breakpoint: Breakpoint (Debug-Haltepunkt) zu markiertem Baustein setzen<br />

Clear all Breakpoints: Alle Breakpoints in diesem Prozess löschen


2. <strong>X4</strong> Front-End<br />

9<br />

2.2.4 Repository Navigator<br />

Die Repository Navigator-Sicht auf der linken Seite des Front-Ends enthält eine<br />

Baumstruktur des verbundenen Repositorys mit verschiedenen Elementen wie <strong>X4</strong>-<br />

Projekten, Ordnern und Dateien.<br />

Über das Textfeld über dem Projektbaum können Sie nach Dateien im Repository suchen.<br />

Kontextmenü im Repository Navigator<br />

Das Kontextmenü können Sie aufrufen, indem Sie im Repository Navigator auf das<br />

gewünschte Element im Projektbaum rechtsklicken.<br />

Abbildung 2.2: Kontextmenü im Repository Navigator<br />

Über dieses Kontextmenü können Sie im Repository Navigator zahlreiche<br />

Dateioperationen ausführen:<br />

• New: Neue Elemente (Prozesse, Ordner, Adapter etc.) im Repository anlegen<br />

• Open und Open with: Elemente (Prozesse, Ordner, Adapter etc.) öffnen<br />

• Preview: Vorschau des markierten Elements anzeigen<br />

• Copy full path to Clipboard und Copy XStore URL to Clipboard: Pfad zur<br />

markierten Datei in die Zwischenablage kopieren (als Ordnerpfad oder als XStore-URL)<br />

• Refresh: Elemente neu aus dem Repository laden<br />

• Cut, Copy und Paste: Markiertes Element im Repository Navigator ausschneiden,<br />

kopieren und einfügen<br />

• Delete: Markiertes Element aus dem Repository löschen


2. <strong>X4</strong> Front-End<br />

10<br />

• Refactor/Rename: Element umbenennen (siehe Abschnitt 5.2.2.1, „Elemente<br />

umbenennen und Referenzen automatisch aktualisieren “)<br />

• Run <strong>X4</strong> Process (nur bei Prozessen): Prozess ausführen<br />

• Export as Webservice (nur bei Prozessen): Prozess als Webservice exportieren<br />

• Validate Process: (nur bei Prozessen): Prozess auf Gültigkeit prüfen<br />

• View Call Hierarchy: Anzeigen, in welchen Prozessen dieses Element verwendet wird<br />

• Import: Element aus dem Dateisystem ins Repository importieren<br />

• Export: Markiertes Element aus dem Repository ins Dateisystem exportieren<br />

2.3 <strong>X4</strong> Front-End konfigurieren<br />

Die Darstellung und das Verhalten einiger Komponenten des <strong>X4</strong> Front-Ends lassen sich wie<br />

folgt nach Ihrem Bedarf anpassen.<br />

2.3.1 Adapter-Editor konfigurieren<br />

Sie können jeweils für Funktions-Adapter und Transfer-Adapter einstellen, wie sich diese<br />

im normalen Online- und im Entwurfs-Modus verhalten.<br />

1. Menü Window > Preferences aufrufen.<br />

2. Auf der linken Seite <strong>X4</strong> Front-End doppelklicken, Adapter Editor wählen.<br />

3. Jeweils für Funktions-Adapter und Transfer-Adapter einstellen:<br />

• Make adapter definition cache: Im Online-Modus die Adapter-Definitionen auf<br />

den Client kopieren, wenn eine Verbindung zum <strong>X4</strong> Server aufgebaut wird (Standard-<br />

Einstellung: aktiviert)<br />

• Always use default adapter definition: Im Entwurfs-Modus immer auf<br />

standardmäßig hinterlegte Adapter-Definitionen zugreifen (Standard-Einstellung:<br />

gewählt)<br />

• Use adapter definition from last connection: Im Entwurfs-Modus die Adapter-<br />

Definitionen verwenden, die bei der letzten Verbindung zum <strong>X4</strong> Server auf den Client<br />

kopiert wurden. Diese Definitionen sind möglicherweise aktueller.


2. <strong>X4</strong> Front-End<br />

11<br />

4. OK klicken, um die Einstellungen zu speichern und das Fenster zu schließen.<br />

2.3.2 Verbindung zum <strong>X4</strong> Server konfigurieren<br />

Sie können einstellen, wie und zu welchem <strong>X4</strong> Server über das Front-End eine Verbindung<br />

aufgebaut wird.<br />

1. Menü Window > Preferences aufrufen.<br />

2. Auf der linken Seite <strong>X4</strong> Front-End doppelklicken, Connection wählen, um die<br />

Verbindungseinstellungen aufzrufen.<br />

3. Verbindungsdaten einstellen:<br />

• Server: Name des Servers (Beispiel: localhost)<br />

• Instance: Bezeichnung der <strong>X4</strong>-Instanz, mit der verbunden werden soll<br />

• Protocol: Verbindungsprotokoll wählen: HTTP oder HTTPS (SSL-verschlüsselt)<br />

• Wenn Sie einen anderen Port als die Standard-Ports für HTTP oder HTTPS verwenden:<br />

in Port die gewünschte Port-Nummer eingeben.<br />

Über Proxy Settings können Sie die Eclipse-Standardeinstellungen zu Proxy-<br />

Servern und Internet-Verbindung bearbeiten.<br />

4. Anmeldedaten einstellen:<br />

• In User den Benutzernamen eingeben.<br />

• In Password das zugehörige Passwort eingeben.<br />

• Wenn Sie dieses Passwort speichern möchten: Remember Password: wählen.<br />

5. Test Connection klicken, um zu prüfen, ob die Verbindung korrekt aufgebaut wird.<br />

6. Wenn Sie mehrere Verbindung verwalten möchten:


2. <strong>X4</strong> Front-End<br />

12<br />

• In Profile einen eindeutigen Namen für die Verbindung eingeben; dieser wird nach<br />

dem Klicken auf Apply in Connection Profiles angezeigt.<br />

• Add klicken, um neue Verbindungen zu Connection Profiles hinzuzufügen.<br />

• Remove klicken, um eine gewählte Verbindung zu löschen.<br />

7. OK klicken, um die Einstellungen zu speichern und das Fenster zu schließen.<br />

2.3.3 Prozess-Designer konfigurieren<br />

Sie können die Standard-Eigenschaften von Prozessen und die Standard-Darstellung der<br />

Prozesse im Prozess-Designer einstellen.<br />

1. Menü Window > Preferences aufrufen.<br />

2. Auf der linken Seite <strong>X4</strong> Front-End doppelklicken, Process Designer wählen.<br />

3. Standard-Verhalten und -Eigenschaften von Prozessen einstellen:<br />

• Can Stop: Zulassen, dass der Prozess abgebrochen werden kann<br />

• Stop on error: Prozess-Ausführung automatisch abbrechen, wenn ein Fehler auftritt<br />

• In Service: Prozess ausführbar machen (wenn die Option nicht aktiviert ist, kann der<br />

Prozess nicht ausgeführt werden)<br />

• Limit process instances: Anzahl der Prozessinstanzen begrenzen. Wenn diese Option<br />

aktiviert ist, können Sie in Maximum eine ganzzahlige Anzahl festlegen.<br />

• Limit execution time: Prozess-Ausführzeit begrenzen. Wenn diese Option aktiviert<br />

ist, können Sie in Maximum eine Zeit festlegen.<br />

4. Standard-Darstellung der Prozesse im Zeichnungsbereich einstellen:<br />

• Show Grid / Snap to grid: Raster im Prozess-Designer anzeigen und die Symbole am<br />

Raster ausrichten<br />

• Use following icon size: Größe der Prozessbaustein-Symbole festlegen:


2. <strong>X4</strong> Front-End<br />

13<br />

• Small (24 pixels): Kleine Darstellung<br />

• Normal (32 pixels): Normale Darstellung<br />

• Large (48 pixels): Große Darstellung<br />

5. OK klicken, um die Einstellungen zu speichern und das Fenster zu schließen.<br />

2.3.4 Run-Modus konfigurieren<br />

Sie können festlegen, ob Prozesse im Front-End mit einer gleichbleibenden Input-Datei<br />

ausgeführt werden sollen. Dies ist beispielsweise beim Entwickeln von Prozessen sinnvoll,<br />

wenn Ihnen nicht sämtliche Daten und übergeordnete Prozesse zur Verfügung stehen.<br />

1. Mit dem Repository verbinden.<br />

2. Menü Window > Preferences aufrufen.<br />

3. Auf der linken Seite <strong>X4</strong> Front-End doppelklicken, Run wählen.<br />

Sie können diese Einstellungen auch aufrufen, indem Sie in der Symbolleiste in<br />

auf den kleinen Pfeil klicken, und Configure Run wählen.<br />

4. Input-Datei bestimmen, die für alle Prozesse im Front-End verwendet werden soll:<br />

• Use input file for the runned process aktivieren, um die Schaltfläche Browse<br />

verwenden zu können.<br />

• Browse klicken, um das Fenster Browse <strong>X4</strong> Repository zu öffnen. Hier können Sie<br />

eine beliebige Datei aus dem Repository wählen.<br />

5. OK klicken, um die Einstellungen zu speichern und das Fenster zu schließen.<br />

2.3.5 Debug-Modus konfigurieren<br />

Sie können festlegen, wie sich Prozesse verhalten, wenn Sie im Front-End auf Fehler<br />

überprüft werden (Debugging). Einmal gesetzt gelten diese Einstellungen für alle Prozesse,<br />

die im Front-End auf Fehler geprüft werden.<br />

1. Mit dem Repository verbinden.<br />

2. Menü Window > Preferences aufrufen.<br />

3. Auf der linken Seite <strong>X4</strong> Front-End doppelklicken, Debug wählen.


2. <strong>X4</strong> Front-End<br />

14<br />

Sie können diese Einstellungen auch aufrufen, indem Sie in der Symbolleiste in<br />

auf den kleinen Pfeil klicken, und Configure Debug wählen.<br />

4. Verhalten im Debug-Modus einstellen:<br />

• Use input file for the debugged process: Input-Datei bestimmen, die für alle<br />

Prozesse im Front-End verwendet werden soll.<br />

Wenn aktiviert, lässt sich die Schaltfläche Browse verwenden.<br />

Browse klicken, um das Fenster Browse <strong>X4</strong> Repository zu öffnen. Hier können Sie<br />

eine beliebige Datei aus dem Repository wählen.<br />

• Enable debug steps delay: Verzögerung zwischen zwei Prozess-Schritten einfügen.<br />

Wenn aktiviert, können Sie im Textfeld darunter eine Verzögerungszeit (in<br />

Millisekunden) eingeben.<br />

• In Debug Stepping Mode wählen, wie das Prozess-Debugging angezeigt werden soll:<br />

• Step Over mode: Schritte ausführen (ohne Details der einzelnen Schritte im<br />

Subprozess anzuzeigen)<br />

• Step Into mode: Schritte ausführen und anzeigen (auch von Subprozessen)<br />

• Break on Entry: Nach dem ersten Prozess-Schritt das Debugging anhalten<br />

5. OK klicken, um die Einstellungen zu speichern und das Fenster zu schließen.<br />

2.3.6 XSL-Transformations-Vorschau konfigurieren<br />

Für den XSL-Editor im <strong>X4</strong> Front-End können Sie für dessen Vorschau festlegen, ob XSL-<br />

Stylesheets auf dem <strong>X4</strong> Server oder im <strong>X4</strong> Front-End transformiert werden sollen. In<br />

letzterem Fall haben Sie die Wahl zwischen dem standardmäßig verwendeten Prozessor<br />

und Saxon.<br />

Diese Einstellungen gelten ausschließlich für den XSL-Editor! XSL-Mappings in<br />

Prozessen werden immer auf dem <strong>X4</strong> Server ausgeführt!


2. <strong>X4</strong> Front-End<br />

15<br />

1. Menü Window > Preferences aufrufen.<br />

2. Auf der linken Seite <strong>X4</strong> Front-End doppelklicken, XSL Preview wählen.<br />

3. In Working Online können Sie das Verhalten von XSL-Transformationen (Ausführen von<br />

XSL-Mappings) einstellen, wenn eine Verbindung zum <strong>X4</strong> Server aufgebaut wurde:<br />

• Always transform locally: Immer den XSLT-Prozessor des <strong>X4</strong> Front-Ends verwenden<br />

(XSL-Skripte lokal ausführen)<br />

In XSL Processor können Sie dann einstellen, welcher lokale XSLT-Prozessor<br />

verwendet wird:<br />

• Default processor: Standard-XSLT-Prozessor des <strong>X4</strong> Front-Ends mit der gezeigten<br />

Klasse verwenden<br />

• Saxon: alternativen XSLT-Prozessor Saxon mit der gezeigten Klasse verwenden<br />

• Wenn Sie zum Debuggen eine bestimmte Input-Datei für XSL-Mappings verwenden<br />

möchten: Use Input File aktivieren und über Browse ein entsprechendes XML-<br />

Dokument im Repository wählen.<br />

4. In Working Locally können Sie einstellen, welcher XSLT-Prozessor im Entwurfs-Modus<br />

des <strong>X4</strong> Front-Ends verwendet wird, wenn Sie also ohne Verbindung zum <strong>X4</strong> Server<br />

arbeiten:<br />

• Default processor: Standard-XSLT-Prozessor des <strong>X4</strong> Front-Ends mit der gezeigten<br />

Klasse verwenden<br />

• Saxon: alternativen XSLT-Prozessor Saxon mit der gezeigten Klasse verwenden<br />

• Wenn Sie zum Debuggen eine bestimmte Input-Datei für XSL-Mappings verwenden<br />

möchten: Use Input File aktivieren und über Browse ein entsprechendes XML-<br />

Dokument aus Ihrem lokalen Eclipse-Projekt wählen.<br />

5. OK klicken, um die Einstellungen zu speichern und das Fenster zu schließen.


2. <strong>X4</strong> Front-End<br />

16<br />

2.4 <strong>X4</strong> Front-End aktualisieren<br />

Das <strong>X4</strong> Front-End lässt sich sowohl in der Eclipse-Plugin-Version als auch in der<br />

Standalone-Version mithilfe einer integrierten Update-Funktion schnell und unkompliziert<br />

über das Internet aktualisieren.<br />

2.4.1 Eclipse-Plugin aktualisieren<br />

Sie können direkt aus Ihrer Eclipse-Umgebung heraus das Plugin für das <strong>X4</strong> Front-End<br />

aktualisieren. Hierfür ist eine Internet-Verbindung erforderlich.<br />

1. Menü Help > Software Updates aufrufen.<br />

Das Fenster Software Updates and Add-ons mit der Registerkarte Installed Software<br />

wird geöffnet, die eine Liste der in Eclipse installierten Plugins zeigt.<br />

2. Das Plugin <strong>X4</strong> Front-End for Eclipse wählen.<br />

3. Update klicken.<br />

Verfügbare Updates für das <strong>X4</strong> Front-End werden nun, sofern vorhanden, angezeigt.


2. <strong>X4</strong> Front-End<br />

17<br />

4. Finish klicken, um den Update-Vorgang zu starten.<br />

Die notwendigen Pakete werden heruntergeladen.<br />

Nach Abschluss des Installationsvorgangs wird das Fenster Software Update geöffnet,<br />

in dem Sie gefragt werden, ob Sie Eclipse neustarten möchten, um die Änderungen<br />

anzuzeigen.<br />

5. Yes klicken, um das Front-End neuzustarten.<br />

Das <strong>X4</strong> Front-End wird nach einigen Sekunden automatisch wieder geöffnet und ist nun<br />

aktualisiert.<br />

2.4.2 Standalone-Version aktualisieren<br />

Sie können die Standalone-Version des <strong>X4</strong> Front-Ends direkt aus der Anwendung heraus<br />

aktualisieren. Hierfür ist eine Internet-Verbindung erforderlich.<br />

Ein Update über das Internet ist nicht möglich Dann kontaktieren Sie Ihren<br />

<strong>X4</strong>-Administrator oder wenden Sie sich an den <strong>SoftProject</strong>-Support (E-Mail:<br />

support@softproject.de), um ein aktuelles Installationspaket der Standalone-<br />

Version zu erhalten. Diese ist direkt nach dem Entpacken lauffähig und ersetzt<br />

die bisherige Installation des <strong>X4</strong> Front-Ends.<br />

1. Menü Help > Check Updates aufrufen.<br />

Es wird geprüft, ob neue Updates verfügbar sind. Wenn ja, wird das Fenster Updates<br />

geöffnet.


2. <strong>X4</strong> Front-End<br />

18<br />

2. Zu installierendes Update auswählen und Lizenbestimmungen akzeptieren.<br />

• <strong>X4</strong> Front-End standalone Update Site aktivieren.<br />

• Next klicken, um die nächste Seite aufzurufen.<br />

• Wenn Sie den Lizenzbestimmung zustimmen: I accept ... wählen (erforderlich).<br />

• Next klicken, um die nächste Seite mit einer Liste der zu installierenden Features<br />

aufzurufen.<br />

3. Finish klicken, um das Herunterladen der Updates zu starten.<br />

Dieser Vorgang kann einige Augenblicke dauern. Anschließend wird das Fenster<br />

Verification geöffnet.<br />

4. Im Fenster Verification auf Install all klicken, um die Updates auf Ihrem Computer zu<br />

installieren.<br />

Anschließend wird das Fenster Install/Update geöffnet.<br />

5. Yes klicken, um das Front-End neuzustarten.<br />

Das <strong>X4</strong> Front-End wird nach einigen Sekunden automatisch wieder geöffnet und ist nun<br />

aktualisiert.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

19<br />

3 Werkzeuge im <strong>X4</strong> Front-End<br />

Das <strong>X4</strong> Front-End stellt eine Reihe von Werkzeuge zur Modellierung von <strong>X4</strong>-Prozessen zur<br />

Verfügung, die im Folgenden vorgestellt werden.<br />

3.1 Prozess-Designer<br />

In diesem Abschnitt wird der Prozess-Designer beschrieben, mit dem Sie technische<br />

Geschäftsprozesse in Form von Diagrammen grafisch modellieren können.<br />

3.1.1 Übersicht über den Prozess-Designer<br />

Der Prozess-Designer ist die zentrale Komponente im <strong>X4</strong> Front-End, mit dem Sie<br />

technische Geschäftsprozesse in Form von Diagrammen modellieren können. Zum<br />

jedem Prozess und zu den einzelnen Prozess-Bausteinen können Sie festlegen, wie diese<br />

ausgeführt werden sollen. Mit dem Prozess-Designer können Sie:<br />

• Verbindungen zwischen verschiedenen Back-End-Systemen herstellen,<br />

• Daten in Echtzeit transformieren,<br />

• Geschäftsregeln im modellierten Prozess implementieren und<br />

• modellierte Prozesse debuggen und auf dem <strong>X4</strong> Server ausführen.<br />

Um den Prozess-Designer zu starten, öffnen Sie im Repository Navigator einen<br />

bestehenen Prozess durch Doppelklick oder legen einen neuen Prozess an (siehe<br />

Abschnitt 4.2.4, „Neuen Prozess oder Prozess-Baustein anlegen “).<br />

Abbildung 3.1: Der Prozess-Designer im <strong>X4</strong> Front-End


3. Werkzeuge im <strong>X4</strong> Front-End<br />

20<br />

3.1.2 Zeichnungsfläche<br />

In der Mitte des Fensters im Editor-Bereich befindet sich die Zeichnungsfläche. Hier<br />

fügen Sie Prozess-Bausteine zu Prozess-Diagrammen zusammen und erstellen Übergänge<br />

zwischen den einzelnen Prozess-Schritten. Ein Raster hilft Ihnen beim Platzieren und<br />

Ausrichten der Baustein-Symbole. Jeder geöffnete Prozess oder Baustein wird in einem<br />

Tab angezeigt, der den jeweiligen Dateinamen trägt.<br />

Kontextmenü im Prozess-Designer<br />

Wenn Sie im Editor-Bereich des Prozess-Designers auf einen Prozess-Baustein<br />

rechtsklicken, stehen Ihnen je nach Bausteinart verschiedene Funktionen zur Verfügung:<br />

Abbildung 3.2: Kontextmenü im Prozess-Designer (markiert: Subprozess)<br />

• Undo und Redo: Rückgängig machen und Wiederherstellen des letzten Schritts<br />

• Copy und Cut: markierten Prozess-Baustein kopieren oder ausschneiden<br />

• Set ... document: markierten Baustein durch ein anderes Element im Repository<br />

austauschen<br />

• Edit: markierten Baustein-Datei bearbeiten (nur Modul-Bausteine und Dokumente)<br />

• Toggle Breakpoint: Debug-Haltepunkt setzen<br />

• Rename: Beschriftung des gewählten Prozess-Bausteins im Prozess-Diagramm ändern<br />

• Delete: Prozess-Baustein aus dem Prozess-Diagramm entfernen<br />

• Validate ... (nur bei Subprozessen): Subprozess auf Gültigkeit prüfen


3. Werkzeuge im <strong>X4</strong> Front-End<br />

21<br />

• Preview ... (nur bei Modul-Bausteinen und Dokumenten): Prozess-Baustein in<br />

separatem Editor öffnen<br />

• Select in Repository Navigator: den Prozess-Baustein im Repository Navigator<br />

zeigen<br />

• View Call Hierarchy: Verwendungsnachweis für den markierten Prozess-Baustein<br />

anzeigen<br />

• View Documentation (nur bei Subprozessen): Prozess-Dokumentation temporär im<br />

Editor-Bereich anzeigen<br />

• Bring to Front: Prozess-Baustein in den Vordergrund des Diagramms setzen<br />

• Bring forward: Prozess-Baustein im Diagramm eine Ebene nach vorne setzen<br />

• Bring backward: Prozess-Baustein im Diagramm eine Ebene nach hinten bringen<br />

• Send to Back: Prozess-Baustein in den Hintergrund des Diagramms setzen<br />

• Refresh (nur bei Modul-Bausteinen und Dokumenten): Prozess-Baustein neu aus dem<br />

Repository laden<br />

• Properties: Eigenschaften des Prozess-Bausteins in der Properties-Sicht anzeigen<br />

3.1.3 Properties-Sicht<br />

In der Properties-Sicht bearbeiten Sie die Eigenschaften von markierten Prozess-<br />

Bausteinen und von geöffneten Prozessen. In der linken Spalte befinden sich die<br />

Eigenschaften, in der rechten Spalte die zugehörigen Werte.<br />

Um die Eigenschaften eines geöffneten Prozesses zu bearbeiten, klicken Sie auf die<br />

Zeichnungsfläche, um eventuell ausgewählte Bausteine zu deselektieren.<br />

3.1.4 Palette<br />

Abbildung 3.3: Properties-Sicht bei einem Prozess<br />

Am rechten Rand der Zeichnungsfläche befindet sich eine Werkzeugleiste, die Palette.<br />

Sie enhält Symbole, die Sie per Drag&Drop in den Editor-Bereich ziehen können. Ohne<br />

weitere Konfiguration können Sie so Prozessfluss-Bausteine (Verzweigung, Stop etc.) und<br />

Zeichnungselemente (Rechteck, Textfeld etc.) einfügen.<br />

Zudem können Sie Adapter, Variablen etc. einfügen, die bei der Prozess-Modellierung<br />

zunächst lediglich als Platzhalter dienen. Hierbei handelt es sich also um Baustein-


3. Werkzeuge im <strong>X4</strong> Front-End<br />

22<br />

Prototypen, die nicht durch eine Datei im Repository repräsentiert werden, sondern direkt<br />

im Prozess gespeichert werden.<br />

Die Palette wird nicht angezeigt Dann klappen Sie die Palette aus, indem Sie am<br />

rechten Rand der Zeichnungsfläche anklicken.<br />

Die Symbole in der Palette sind in vier Ausklappbereiche ("Flyouts") gegliedert.<br />

Control-Ausklappbereich<br />

Start: Start-Baustein einfügen<br />

Stop: Stop-Baustein als Prozess-Ende einfügen<br />

Fork: Gabelung in den Prozess einfügen<br />

Join: Zusammenführung einer Gabelung einfügen<br />

Condition: Bedingung einfügen<br />

Transaction: Transaktions-Baustein einfügen<br />

Pause: Pausen-Element einfügen<br />

Counter: Zähler einfügen<br />

Data-Ausklappbereich<br />

XML: Platzhalter für ein XML-Dokument einfügen<br />

Document: Platzhalter für ein Dokument im Binärformat einfügen<br />

Merge: Merge-Baustein einfügen<br />

Variable: Variable einfügen<br />

Modules-Ausklappbereich<br />

Database: Platzhalter für eine Datenbank-Verbindung einfügen<br />

Transfer: Platzhalter für einen Transfer-Adapter einfügen<br />

Adapter: Platzhalter für einenen Funktions-Adapter einfügen<br />

Nested Process: Platzhalter für Subprozess ("nested process") einfügen<br />

Mapping: Platzhalter für ein XSL-Mapping einfügen


3. Werkzeuge im <strong>X4</strong> Front-End<br />

23<br />

Report: Platzhalter für ein XSL-FO-Skript einfügen<br />

Drawing-Ausklappbereich<br />

Rectangle: Rechteck-Zeichnungselement einfügen<br />

Textbox: Textfeld zum Beschriften und Dokumentieren einfügen<br />

Ellipse: Ellipsen-Zeichnungselement einfügen<br />

Polygon: Vieleck-Zeichnungselement einfügen<br />

Polyline: freies Linien-Zeichnungselement einfügen<br />

Curve: Kurvenlinie einfügen<br />

Line: Gerade Linie einfügen<br />

Image: Externe Grafikdatei in das Prozessdiagramm einfügen<br />

3.1.5 Debug-Symbolleiste<br />

In der Sicht Properties können Sie markierte Zeichnungselemente u.a.<br />

hinsichtlich der Füllfarbe (Fill Color), der Linienfarbe (Line Color) und der<br />

Liniendicke (Line Width) formatieren.<br />

Über die Debug-Symbolleiste können Sie den Prozess auf Fehler überprüfen und testen.<br />

Run <strong>X4</strong> Process: <strong>X4</strong>-Prozess starten<br />

Start Debug: <strong>X4</strong>-Prozess debuggen (Fehler anzeigen und beseitigen)<br />

Step Into: Einzelschritt ausführen und anzeigen (auch in Subprozessen)<br />

Step Over: Subprozess ausführen und Status anzeigen<br />

Step Return: Auf nächsthöhere Prozess-Ebene springen<br />

Suspend: Debugging-Vorgang anhalten<br />

Resume: Debugging fortsetzen<br />

Terminate: Debugging beenden<br />

Toggle Breakpoint: Debug-Haltepunkt zu diesem Baustein setzen<br />

Clear all Breakpoints: Alle Debug-Haltepunkte in diesem Prozess löschen<br />

3.1.6 Run/Debug Console-Sicht


3. Werkzeuge im <strong>X4</strong> Front-End<br />

24<br />

Wenn Sie einen Prozess auf Fehler überprüfen, werden in der Run/Debug Console-Sicht<br />

zu jedem ausgeführten Prozess-Schritt Debug-Informationen angezeigt. Fehlermeldungen<br />

werden rot hervorgehoben, erfolgreiche Statusmeldungen sind grün.<br />

Zu jedem Prozess-Schritt wird eine Ausgabe-Datei angelegt, die Sie über den<br />

entsprechenden Verweis ansehen können (beispielsweise file://1244017505671).<br />

Abbildung 3.4: Run/Debug Console-Sicht<br />

3.2 Adapter-Editor<br />

Über diesen Editor konfigurieren Sie Adapter des <strong>X4</strong> Repositorys. Unterschieden wird<br />

hierbei zwischen Transfer-Adaptern und Funktions-Adaptern.<br />

Je nach ausgewähltem Adapter sind unterschiedliche Parameter erforderlich. Eine<br />

Parameter-Referenz zu jedem Adaptertyp finden Sie im <strong>X4</strong> Reference Manual<br />

(englischsprachig) in Kapitel 2 Adapters.<br />

Um den Adapter-Editor aufzurufen, doppelklicken Sie im Repository Navigator oder in<br />

einem geöffneten Prozess auf einen Transfer- oder Funktions-Adapter, oder Sie erstellen<br />

einen neuen Transfer- oder Funktions-Adapter.<br />

Die Adapter-Editoren bieten folgende Funktionen:<br />

• Adapter Type: Adapter wählen<br />

• Reset To Default: Sämtliche Parameterwerte auf Standard zurücksetzen (löscht<br />

sämtliche Eingaben)<br />

• Filter: Anfangsbuchstaben eines Parameters eingeben, um angezeigte Parameter zu<br />

filtern.<br />

• Show All: Filter zurücksetzen, um wieder alle Parameter anzeigen.<br />

• Parameter: Bezeichnung des Parameters<br />

Notwendige Parameter erhalten das Symbol .<br />

• Value: den zum Parameter gehörigen Wert können Sie hier eingeben.<br />

• Parameter Description: Zeigt eine Beschreibung des gewählten Parameters an.<br />

Transfer-Adapter-Editor<br />

Über diesen Editor konfigurieren Sie Prozess-Bausteine vom Typ Transfer-Adapter. Mit<br />

Transfer-Adaptern können Sie über verschiedene Protokolle wie FTP oder E-Mail Daten<br />

austauschen.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

25<br />

Abbildung 3.5: Transfer-Adapter-Editor (Beispiel: Filesystem-Transfer-Adapter)<br />

Funktions-Adapter-Editor<br />

Über diesen Editor konfigurieren Sie Prozess-Bausteine vom Typ Funktions-Adapter.<br />

Funktions-Adapter stellen grundlegende Funktionen bereit, etwa Zeichensatz-<br />

Konvertierungen oder ermöglichen Zugriff auf ein SAP-System.<br />

Da das <strong>X4</strong> Front-End hauptsächlich mit XML-Daten arbeitet, werden mit Funktions-<br />

Adapter meist XML-Dokumente erzeugt oder verändert. Als Ausgabe erzeugen Funktions-<br />

Adapter meist XML-Daten, die in einem nächsten Prozess-Schritt weiterverarbeitet<br />

werden.<br />

Abbildung 3.6: Funktions-Adapter-Editor


3. Werkzeuge im <strong>X4</strong> Front-End<br />

26<br />

3.3 SQL-Editor<br />

Über diesen Editor können Sie SQL-Anweisungen definieren, um mit einer Datenbank zu<br />

interagieren. Durch die logische Trennung der Prozess-Bausteine SQL-Anweisung und<br />

Datenbank-Verbindung können Sie im <strong>X4</strong> Front-End diese Prozess-Bausteine flexibel<br />

einsetzen und mehrfach verwenden.<br />

Um den SQL-Editor aufzurufen, doppelklicken Sie im Repository Navigator oder in einem<br />

geöffneten Prozess auf einen SQL-Anweisungsbaustein, oder Sie erstellen eine neue SQL-<br />

Anweisung.<br />

Abbildung 3.7: SQL-Editor<br />

Für die SQL-Anweisungen in diesem Prozess-Baustein eine Datenbank-Verbindung<br />

definieren:<br />

• Connection: Datenbankverbindungs-Baustein aus dem Repository wählen<br />

Diese können Sie auch per Drag&Drop aus dem Repository einfügen. Bereits<br />

verwendete Datenbankverbindungen können Sie aus dieser Liste auswählen.<br />

• Browse: Datenbankverbindungs-Baustein aus dem Repository wählen.<br />

Query-Bereich<br />

Im Query-Bereich des SQL-Editors können Sie in ein Textfeld SQL-Anweisungen eingeben<br />

und eine oder mehrere SQL-Anweisungen in einer Liste speichern. Zum Verwalten der Liste<br />

der gespeicherten SQL-Anweisungen verwenden Sie folgende Schaltflächen:


3. Werkzeuge im <strong>X4</strong> Front-End<br />

27<br />

• Add: SQL-Anweisung zur Liste der gespeicherten Anweisungen hinzufügen<br />

• Remove: Gespeicherte SQL-Anweisung aus der Liste löschen<br />

Options-Bereich<br />

Im Options-Bereich des SQL-Editors können Sie die Ausgabe-Optionen für die SQL-<br />

Anweisungen festlegen:<br />

• Result Element: Name des XML-Elements verändern, das jeden ausgegebenen<br />

Datensatz umschließt (Standard: )<br />

• Use Cursor: Datenbank-Cursor für die SQL-Anweisung verwenden (aktiviert Textfeld<br />

Fetch Size)<br />

• Fetch Size: Anzahl der ausgebenen Ergebnisse beschränken<br />

• Execute Query: SQL-Anweisung innerhalb des SQL-Editors ausführen<br />

Result-Bereich<br />

Im Result-Bereich des SQL-Editors können Sie das Ergebnis der SQL-Anweisung anzeigen.<br />

• Data: Diese Registerkarte zeigt die ausgegebenen Ergebnisse der Anweisung<br />

tabellarisch an<br />

• XML: Diese Registerkarte zeigt die ausgegebenen Ergebnisse der SQL-Anweisung als<br />

XML-Struktur an, so wie sie der SQL-Anweisungs-Baustein ausgeben wird<br />

• Save Result XML: Ergebnisse der SQL-Anweisung als XML-Dokument im Repository<br />

speichern<br />

• Außerdem können Sie für bereits ausgeführte SQL-Anweisungen spezielle Datenbank-<br />

Vorlagen im XML-Format erzeugen und im Repository abspeichern. Diese enthalten<br />

eine Tabellendefinition der ausgeführten Anweisungen und können für Datenbank-<br />

Mappings verwendet werden. Folgende Vorlagen sind möglich:<br />

• Generate INSERT Template: Datenbank-Vorlage für ein INSERT-Statement<br />

erstellen und im Repository speichern<br />

• Generate UPDATE Template: Datenbank-Vorlage für ein UPDATE-Statement<br />

erstellen und im Repository speichern<br />

• Generate DELETE Template: Datenbank-Vorlage für ein DELETE-Statement<br />

erstellen und im Repository speichern<br />

3.4 Datenbankverbindungs-Editor<br />

Über diesen Editor konfigurieren Sie Datenbankverbindungen entweder über DataSource<br />

Connections oder über JDBC Connections. Auf die Datenbank-Verbindungen greifen Sie<br />

mithilfe eines im Prozess vorgelagerten SQL-Anweisungs-Baustein zu.<br />

Je nachdem, ob Sie DataSource Connection oder JDBC Connection wählen,<br />

sind unterschiedliche Parameter erforderlich. Eine Parameter-Referenz zu jedem<br />

Verbindungstyp finden Sie im <strong>X4</strong> Reference Manual (englischsprachig) im Abschnitt 2.3<br />

Connection Configuration.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

28<br />

Um den Datenbankverbindungs-Editor aufzurufen, doppelklicken Sie im Repository<br />

Navigator oder in einem geöffneten Prozess auf einen Datenbankverbindungs-Baustein,<br />

oder Sie erstellen eine neue Datenbankverbindung.<br />

Abbildung 3.8: Datenbankverbindungs-Editor<br />

Der Datenbankverbindungs-Editor bietet folgende Funktionen:<br />

• Database Type: Datenbankverbindungs-Typ wählen<br />

• Reset To Default: Sämtliche Parameterwerte auf Standard zurücksetzen (löscht<br />

sämtliche Eingaben)<br />

• Filter: Anfangsbuchstaben eines Parameters eingeben, um angezeigte Parameter zu<br />

filtern.<br />

• Show All: Filter zurücksetzen, um wieder alle Parameter anzeigen.<br />

• Parameter: Bezeichnung des Parameters<br />

Notwendige Parameter erhalten das Symbol .<br />

• Value: Den zum Parameter gehörigen Wert können Sie hier eingeben.<br />

• Parameter Description: Zeigt eine Beschreibung des gewählten Parameters an.<br />

• Test Connection: Datenbankverbindung testen<br />

3.5 Condition Editor<br />

Mit dem Condition Editor können Sie für Condition-Bausteine innerhalb eines Prozesses<br />

festlegen, unter welchen Bedingungen verschiedene Verzweigungen ausgeführt werden<br />

sollen. Für jede Verzweigung lässt sich daher festlegen, bei welchen Werten oder<br />

Eigenschaften sie gültig ist und aufgerufen wird.<br />

Um den Condition Editor aufzurufen, öffnen Sie einen Prozess und doppelklicken auf ein<br />

Condition-Symbol .


3. Werkzeuge im <strong>X4</strong> Front-End<br />

29<br />

Abbildung 3.9: Condition Editor<br />

Das Fenster des Condition Editors enthält folgende Bereiche und Symbole:<br />

Branch-Bereich<br />

In der Auswahlliste Branch wählen Sie den Zweig, für den Sie eine Bedingung festlegen<br />

möchten. Alternativ können Sie auch in der grafischen Darstellung den gewünschten<br />

Übergang anklicken, um für diesen Zweig eine Bedingung zu definieren.<br />

Zoom in: Ansicht vergrößern<br />

Original zoom: Ursprüngliche Größe anzeigen<br />

Zoom out: Ansicht verkleinern<br />

Zoom to page: Alles anzeigen<br />

Zoom to width: Ansicht auf voller Breite<br />

Condition-Bereich<br />

Im Bereich Condition werden die Bedingungen für den ausgewählten Zweig angezeigt<br />

und bearbeitet. Um eine Bedingung zu erstellen oder zu bearbeiten, klicken Sie im<br />

Listenfeld auf Insert ....<br />

Das Auswahlfeld Condition zeigt die Bedingung des ausgewählten Übergangs an.<br />

Undo: Rückgängig machen


3. Werkzeuge im <strong>X4</strong> Front-End<br />

30<br />

Redo: Rückgängig gemachten Schritt wiederherstellen<br />

Cut: Auswahl ausschneiden<br />

Copy: Auswahl kopieren<br />

Paste: Auswahl einfügen<br />

Logical AND: Logische UND-Verknüpfung einfügen<br />

Logical OR: Logische ODER-Verknüpfung einfügen<br />

Logical NOT: Logische NICHT-Verknüpfung einfügen<br />

Delete: Bedingung löschen<br />

Edit Condition-Bereich<br />

Im Bereich Edit Condition können Sie die gewählte Bedingung bearbeiten.<br />

If result of: In dieser Auswahlliste wählen Sie den Prozess-Baustein, für dessen Ergebnis<br />

Sie eine Bedingung festlegen möchten.<br />

Browse: Prozess-Ansicht in voller Größe einblenden<br />

Vergleichsoperator auswählen<br />

• : größer als ...<br />

• : ungleich zu ...<br />

Vergleichswert angeben<br />

• (no result): Wenn kein Ergebnis vorhanden ist<br />

• error: Wenn ein Fehler auftritt<br />

• ok: Wenn kein Fehler auftritt<br />

• empty: Wenn das Ergebnis eine leere Menge ist<br />

• (Beliebiger Wert)<br />

3.6 XSL-Editor<br />

In diesem Abschnitt wird der XSL-Editor beschrieben, mit dem Sie XSL-Mappings in einer<br />

grafischen Ansicht erstellen und bearbeiten können.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

31<br />

3.6.1 Überblick über den XSL-Editor<br />

Mit dem XSL-Editor können Sie XSL-Mappings und XSL-FO-Reports zwischen XML-<br />

Dokumenten erstellen, d.h. eine XML-Datenstruktur mithilfe der Sprache XSLT 1.1 in eine<br />

andere XML-Datenstruktur oder in ein XSL-FO-Skript transformieren. Der XSL-Editor<br />

unterstützt Sie beim Erstellen eines XSL-Mappings durch eine grafische Oberfläche und<br />

durch eine automatische Gültigkeitsprüfung des Stylesheets sowie der XPath-Ausdrücke.<br />

Um ein Mapping zu erstellen, benötigen Sie drei Dateien:<br />

• XML-Quelldokument (oder ein XML-Schema)<br />

• XSLT-Stylesheet (dieses wird im XSL-Editor erstellt)<br />

• XML-Ausgabedokument<br />

Um den XSL-Editor zu starten, doppelklicken Sie im Repository Navigator oder auf der<br />

Zeichnungsfläche auf ein XSLT-Mapping.<br />

Abbildung 3.10: Der XSL-Editor<br />

Der XSL-Editor verfügt über zwei Ansichten, zwischen denen Sie über zwei Registerkarten<br />

am unteren Rand des XSL-Editors wechseln können:<br />

• Design: In der dreispaltigen Design-Ansicht stellt der XSL-Editor das XSLT-Stylesheet<br />

als Baum dar. Hier können Sie die Knoten des Quelldokuments den Knoten im XSLT-<br />

Stylesheet grafisch über Verbindungslinien zuordnen.<br />

• Source: In dieser Quellcode-Ansicht können Sie das XSLT-Stylesheet direkt im XML-<br />

Editor bearbeiten (siehe Abschnitt 3.7.1, „Übersicht über den XML-Editor “).<br />

3.6.2 Quelldokumentbereich<br />

Auf der linken Seite des XSL-Editors befindet sich in der Design-Ansicht der<br />

Quelldokumentbereich, in dem Sie das zu transformierende Quelldokument oder eine<br />

Schema-Datei (.xsd) anzeigen können.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

32<br />

Abbildung 3.11: Quelldokumentbereich im XSL-Editor<br />

Um ein Quelldokument oder ein Schema einzufügen, ziehen Sie eine entsprechende Datei<br />

aus dem Repository Navigator per Drag&Drop in den Quelldokumentbereich. Alternativ<br />

rechtsklicken Sie auf den Quelldokumentbereich, um das Kontextmenü aufzurufen und<br />

wählen Assign Schema.<br />

3.6.3 Verknüpfungsbereich<br />

In der mittleren Spalte des XSL-Editors befindet sich der Verknüpfungsbereich. Hier<br />

werden die Verknüpfungen zwischen Knoten im Quelldokument und XSL-Stylesheet als<br />

verschiedenfarbige Linien visualisiert.<br />

Abbildung 3.12: Verknüpfungsbereich im XSL-Editor<br />

Verknüpfungs-Kategorien<br />

Farbe/Stil Bedeutung Verwendung<br />

Grün<br />

Wert-Übernahme, mit oder ohne<br />

Kindknoten-Elemente<br />

xsl:value-of, xsl:copy-of<br />

Orange Anlegen eines Kontextes xsl:for-each


3. Werkzeuge im <strong>X4</strong> Front-End<br />

33<br />

Farbe/Stil Bedeutung Verwendung<br />

Gelb<br />

Gestrichelt<br />

Grau<br />

3.6.4 Stylesheet-Bereich<br />

Wert-Überprüfung mit<br />

Bedingungen<br />

XPath-Ausdruck mit Filter-<br />

Ausdruck (Prädikat)<br />

Mehrere Verknüpfungspfade zu<br />

einem Knoten<br />

xsl:if, xsl:choose<br />

bei Filter-Ausdrücken<br />

(Prädikaten)<br />

bei zugeklappten Knoten<br />

Auf der rechten Seite des XSL-Editors befindet sich der Stylesheet-Bereich. Hier<br />

bearbeiten Sie den Hauptbestandteil eines Mappings, das XSL-Stylesheet. Das Stylesheet<br />

wird in einer Baumstruktur angezeigt und bietet über das Kontextmenü Zusatzfunktionen<br />

für die XSL-Bearbeitung.<br />

Abbildung 3.13: Stylesheet-Bereich im XSL-Editor<br />

Die verschiedenen Bestandteile des XSL-Stylesheets werden in der Baumansicht mit<br />

Symbolen und farblichen Hervorhebungen dargestellt:<br />

• Knoten mit XSL-Anweisungen besitzen eine braune Schriftfarbe und ein<br />

entsprechendes Symbol, z.B. .<br />

• Knoten mit einem XPath-Ausdruck besitzen ein entsprechendesXPath-Symbol ( ). Um<br />

den XPath-Ausdruck zu bearbeiten, klicken Sie auf dieses Symbol.<br />

• Virtuelle Knoten (aus der Quellstruktur übernommene, aber noch nicht im Stylesheet<br />

explizit vorhandene Knoten) werden grau dargestellt.<br />

Symbole der Knotentypen<br />

Symbol Knotentyp Symbol Knotentyp<br />

Element<br />

xsl:attribute


3. Werkzeuge im <strong>X4</strong> Front-End<br />

34<br />

Symbol Knotentyp Symbol Knotentyp<br />

Attribut<br />

Virtuelles Element<br />

Virtuelles Attribut<br />

Element aus dem Schema<br />

Attribute aus dem Schema<br />

Namespace<br />

Processing Instruction<br />

Kommentar<br />

Text<br />

Variable<br />

Rekursives virtuelles<br />

Element<br />

xsl:choose<br />

xsl:copy<br />

xsl:copy-of<br />

xsl:element<br />

xsl:for-each<br />

xsl:if<br />

xsl:otherwise<br />

xsl:stylesheet<br />

xsl:template<br />

xsl:value-of<br />

xsl:variable<br />

xsl:when<br />

Andere XSLT-Anweisung<br />

3.6.5 Kontextmenü im Stylesheet-Bereich<br />

Um das Kontextmenü im Stylesheet-Bereich des XSL-Editors aufzurufen, rechtsklicken Sie<br />

auf den gewünschten Knoten im XSL-Stylesheet.<br />

Über das Kontextmenü können Sie im Stylesheet-Bereich den gewählten Knoten<br />

folgendermaßen bearbeiten:<br />

• Edit XPath (nur wenn XPath-Ausdruck hinterlegt ist): XPath-Ausdruck bearbeiten<br />

• Edit (bei Processing Instructions, Namespace-Deklarationen): Knoteninhalt bearbeiten<br />

• Add here (nur bei virtuellen Knoten): Virtuellen Knoten in tatsächlichen Knoten<br />

umwandeln<br />

• Rename: Knoten umbenennen<br />

• Add Child: Kind-Knoten (Element, Attribut, xsl-Anweisung etc.) an dieser Stelle im<br />

Stylesheet hinzufügen<br />

• Add Before: Knoten (Element, Attribut, xsl-Anweisung etc.) vor dem markierten<br />

Knoten einfügen<br />

• Add After: Knoten (Element, Attribut, xsl-Anweisung etc.) hinter dem markierten<br />

Knoten einfügen<br />

• Add Parent: Eltern-Element (übergeordnetes Element) einfügen


3. Werkzeuge im <strong>X4</strong> Front-End<br />

35<br />

• Cut, Copy und Paste: Auswahl ausschneiden, kopieren und einfügen<br />

• Delete: Knoten löschen<br />

• Expand: Unterelemente des Knotens aufklappen<br />

• Collapse: Knoten mit aufgeklappten Unterelementen zuklappen<br />

• Assign Schema: Virtuellen Knoten aus einem XML-Dokument einfügen<br />

• Remove Schema: Eingefügten virtuellen Knoten entfernen<br />

3.7 XML-Editor<br />

In diesem Abschnitt wird der XML-Editor beschrieben, mit dem Sie wohlgeformte XML-<br />

Dokumente erstellen und bearbeiten können.<br />

3.7.1 Übersicht über den XML-Editor<br />

Um den XML-Editor zu starten, doppelklicken Sie im Repository Navigator oder auf der<br />

Zeichnungsfläche auf ein XML-Dokument.<br />

Zum Bearbeiten von XML-Dokumenten stehen Ihnen zwei Ansichten zur Verfügung, die<br />

Design-Ansicht und die Source-Ansicht, zwischen denen Sie über die Registerkarten am<br />

unteren Rand des Editors wechseln können.<br />

Um XSL-Stylesheets, HTML-Dateien etc. mit dem XML-Editor zu öffnen,<br />

rechtsklicken Sie im Repository Navigator auf das gewünschte Stylesheet und<br />

wählen im Kontextmenü Open with > XML-Editor.<br />

3.7.2 Design-Ansicht des XML-Editors<br />

In der Design-Ansicht wird die Baumstruktur des geöffneten XML-Dokuments tabellarisch<br />

dargestellt. In der linken Spalte befinden sich die verschiedenen Knoten des Elements,<br />

die Sie auf- und zuklappen können, sofern Kindknoten existieren. In der rechten Spalte<br />

werden die Inhalte der Knoten angezeigt.<br />

Abbildung 3.14: XML-Editor in der Design-Ansicht<br />

Kontextmenü in der Design-Ansicht<br />

Die Baumstruktur des XML-Dokuments können Sie über das Kontextmenü bearbeiten,<br />

indem Sie auf das gewünschte Element rechtsklicken.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

36<br />

Abbildung 3.15: Kontextmenü in der Design-Ansicht des XML-Editors<br />

Funktionen im Kontextmenü sind:<br />

• Remove: Markierten Knoten entfernen<br />

• Add DTD Information: Strukturdefinition in Form einer DTD (Document Type<br />

Definition) hinzufügen<br />

• Edit Namespaces: Namensräume bearbeiten<br />

• Add Attribute: Neues Attribut hinzufügen<br />

• Add Child: Neuen Kindknoten (Element, Processing Instruction etc.) hinzufügen<br />

• Add Before: Neuen Knoten vor dem markierten Knoten einfügen<br />

• Add After: Neuen Knoten hinter dem markierten Knoten einfügen<br />

In der Outline-Sicht können Sie ebenfalls das geöffnete XML-Dokument in einer<br />

grafisch dargestellten Baumstruktur bearbeiten. Auch dort steht Ihnen dieses<br />

Kontextmenü zur Verfügung.<br />

3.7.3 Source-Ansicht des XML-Editors<br />

In der Source-Ansicht des XML-Editors können Sie den Quelltext von XML-Dokumenten<br />

bearbeiten. Dabei unterstützt Sie der Editor durch folgende Funktionen:<br />

• Syntax-Highlighting: Farbliche Hervorhebung der verschiedenen Knotentypen<br />

• Validierung: Eine Überprüfung, ob das XML-Dokument wohlgeformt ist, erfolgt beim<br />

Speichern oder indem Sie auf das Symbol<br />

in der Symbolleiste klicken.<br />

• Eingabehilfen: Der Editor macht Vorschläge, wenn Sie neue Elemente einfügen<br />

möchten (siehe Abbildung 3.16, „XML-Editor in der Source-Ansicht mit Eingabe-<br />

Unterstützung“).<br />

• Pretty-Print: XML-Dokument mit Einrückungen und Zeilenumbrüchen lesbarer<br />

formatieren. Rechtsklicken Sie dazu im Editor-Bereich, um das Kontextmenü<br />

aufzurufen und rufen Source > Format auf.


3. Werkzeuge im <strong>X4</strong> Front-End<br />

37<br />

Abbildung 3.16: XML-Editor in der Source-Ansicht mit Eingabe-Unterstützung<br />

3.8 Text-Editor<br />

Mit dem Text-Editor können Sie unformatierte Textdateien (.txt, .csv etc.) anzeigen und<br />

bearbeiten. Strukturierte Daten (.xml, .html etc.) können Sie ebenfalls bearbeiten, jedoch<br />

stehen hier die erweiterten Bearbeitungsfunktionen des XML-Editors nicht zur Verfügung.<br />

Abbildung 3.17: Text-Editor in Eclipse<br />

3.9 BPM-Designer<br />

Die Darstellung des Text-Editors in Eclipse können Sie anpassen, indem Sie im<br />

Editor-Bereich rechtsklicken, um das Kontextmenü aufzurufen und Preferences<br />

wählen.<br />

In diesem Abschnitt wird der BPM-Designer beschrieben, mit dem Sie fachliche Prozesse<br />

gemäß dem BPMN-Standard im <strong>X4</strong> Front-End erstellen können.<br />

3.9.1 BPM-Designer<br />

Mit dem BPM-Designer können Sie fachliche Prozesse gemäß dem Notationsstandard der<br />

BPMN modellieren (BPM steht hier für Business Process Modeling). Da in BPM-Prozesse<br />

theoretisch auch nicht-automatisierbare Aktionen, etwa Arbeitsabläufe von Menschen,<br />

eingebunden werden können, sind BPM-Prozesse nicht notwendigerweise vom <strong>X4</strong> Server


3. Werkzeuge im <strong>X4</strong> Front-End<br />

38<br />

ausführbar. <strong>X4</strong>-Prozesse können jedoch als Subprozesse in BPM-Prozesse eingefügt und<br />

ausgeführt werden.<br />

Abbildung 3.18: BPM-Designer im <strong>X4</strong> Front-End<br />

Der BPM-Designer ist eine spezielle (fachliche) Sicht auf Prozesse. Er entspricht in Aufbau<br />

und Bedienweise dem Prozess-Designer (siehe Abschnitt 3.1.1, „Übersicht über den<br />

Prozess-Designer “), unterscheidet sich jedoch hinsichtlich der Prozess-Bausteine bzw.<br />

Symbole im Prozess-Diagramm.<br />

3.9.2 Prozess-Bausteine und Symbole<br />

Folgende Prozess-Bausteine und Symbole gemäß BPMN stehen im BPM-Designer in der<br />

Palette am rechten Rand des Zeichnungsbereichs zur Verfügung:<br />

Start Event<br />

End Event<br />

OR Gateway<br />

AND Gateway<br />

XOR Gateway<br />

Sub-Process<br />

Data Object<br />

Start-Event-Baustein einfügen<br />

End-Event-Baustein als Prozess-Ende einfügen (entspricht Stop<br />

in <strong>X4</strong>-Prozessen)<br />

Exklusiv-ODER-Prozessfluss-Baustein (entspricht einer<br />

Gabelung/Fork in <strong>X4</strong>-Prozessen) einfügen<br />

UND-Prozessfluss-Baustein (entspricht einer<br />

Zusammenführung/Join in <strong>X4</strong>-Prozessen) einfügen<br />

Exklusiv-ODER-Prozessfluss-Baustein (entspricht einem<br />

Bedingungs-/Condition-Baustein in <strong>X4</strong>-Prozessen) einfügen<br />

Subprozess-Baustein (<strong>X4</strong>-Prozess) einfügen<br />

Datenobjekt (entspricht einer Text-/Binärdatei in <strong>X4</strong>-Prozessen)<br />

einfügen


3. Werkzeuge im <strong>X4</strong> Front-End<br />

39<br />

Timer Event Timer-Prozessfluss-Baustein (entspricht einer Pause in <strong>X4</strong>-<br />

Prozessen) einfügen<br />

Counter<br />

Zähler einfügen<br />

3.10 <strong>X4</strong> Business Activity Monitoring (BAM)<br />

<strong>X4</strong> BAM ist ein browser-basiertes Werkzeug mit dem Sie bestehende <strong>X4</strong>-Prozesse<br />

überwachen und steuern können. <strong>X4</strong> BAM unterstützt Sie bei der Fehlerbehebung, indem<br />

Sie Probleme wie Datenüberlastung, lange Antwortzeiten und Verletzungen der Service-<br />

Level-Bestimmungen identifizieren können. <strong>X4</strong> BAM ersetzt das bisher mitgelieferte <strong>X4</strong><br />

Command Center.<br />

Um <strong>X4</strong> BAM aufzurufen, geben Sie in der Adressleiste Ihres Browsers http://<br />

localhost:8080/<strong>X4</strong>-bam-jsp ein und drücken Sie Enter.<br />

Abbildung 3.19: <strong>X4</strong> Business Activity Monitoring (BAM)<br />

Die wichtigsten Funktionen von <strong>X4</strong> BAM sind:<br />

• Übersichtliche Darstellung der Prozesse<br />

• Bestimmung von Parametern wie Prozesslaufzeit, PID oder der Fehlerrate<br />

• Komfortables Reporting und Excel-Export (als .csv-Datei)<br />

• Aufrufen der Prozessdokumentation<br />

• Technisches Logging und Content Logging<br />

Nähere Informationen zu <strong>X4</strong> BAM finden Sie im Handbuch <strong>X4</strong> 4.0 BAM User Manual<br />

(englischsprachig).


3. Werkzeuge im <strong>X4</strong> Front-End<br />

40


4. Prozesse modellieren<br />

41<br />

4 Prozesse modellieren<br />

In diesem Abschnitt wird beschrieben, aus welchen Bestandteilen sich ein <strong>X4</strong>-Prozess<br />

zusammensetzt und wie Sie mit dem <strong>X4</strong> Front-End Geschäftsprozesse organisieren,<br />

entwickeln, grafisch darstellen und ausführen können.<br />

4.1 Prozess-Bausteine<br />

<strong>X4</strong>-Prozesse werden aus verschiedenen Prozess-Bausteinen aufgebaut. In welche<br />

grundlegenden Bausteinarten sich Prozess-Bausteine unterteilen lassen, wird im<br />

Folgenden dargestellt.<br />

Detaillierte Informationen zu Prozessen, den einzelnen Bausteinarten und<br />

Adaptern finden Sie im <strong>X4</strong> 4.0 Reference Manual (englischsprachig) im Abschnitt<br />

1 Process Components.<br />

4.1.1 Prozessfluss-Bausteine<br />

Die Prozessfluss-Bausteinen stellen die Basisfunktionen für den Ablauf des Prozesses und<br />

entsprechende Kontrollstrukturen bereit:<br />

Start: Beginn des Prozesses<br />

Stop: Ende des Prozesses<br />

Fork: Gabelungen<br />

Join: Zusammenführungen von Gabelungen<br />

Condition: Bedingte Verzweigungen<br />

Transaction: Transaktionen<br />

Pause: Wartezeiten<br />

Counter: Zähler<br />

4.1.2 Daten-Bausteine<br />

Hierbei handelt es sich um Prozess-Bausteine, die Daten temporär oder permanent<br />

speichern und innerhalb eines Prozesses zusammenführen:<br />

XML: XML-Dokumente<br />

Document: Text- oder Binärdateien<br />

Merge: Daten-Zusammenführungen


4. Prozesse modellieren<br />

42<br />

Variable: Variablen<br />

4.1.3 Modul-Bausteine<br />

Mit Modulen wird der Prozess mit der Außenwelt und anderen Prozessen verbunden,<br />

beispielsweise in Form von Datenbank-Verbindungen, Funktions-Adapter und<br />

Subprozessen. Modul-Bausteine liegen als wiederverwendbare Dateien im Repository vor.<br />

Deren Konfiguration erfolgt entweder in der jeweiligen Adapter-Konfiguration oder direkt<br />

in einem XSL-Stylesheet (bei Mappings und Reports).<br />

Database: Datenbank-Anbindung<br />

Transfer: Transfer-Adapter zur Nutzung verschiedener Protokolle<br />

Adapter: Funktions-Adapter für weitere Daten-Operationen<br />

Nested Process: Subprozesse<br />

Mapping: XSL-Stylesheets<br />

Report: XSL-FO-Stylesheets<br />

4.1.4 Zeichnungselemente<br />

Diese Bausteine besitzen keine eigene Funktion, sondern dienen dazu, das<br />

Prozessdiagramm zu dokumentieren und übersichtlich zu gestalten:<br />

Rectangle: Rechteck-Zeichnungselemente<br />

Textbox: Textfelder<br />

Ellipse: Ellipsen-Zeichnungselemente<br />

Polygon: Vieleck-Zeichnungselemente<br />

Polyline: Freie Linien-Zeichnungselemente<br />

Curve: Kurvenlinien-Zeichnungselemente<br />

Line: Linien-Zeichnungselemente<br />

Image: Externe Grafikdateien<br />

4.2 Elemente im Repository verwalten<br />

In diesem Abschnitt wird beschrieben, wie Sie Projekte, Prozesse und Projekt-Bausteine im<br />

Repository verwalten können.


4. Prozesse modellieren<br />

43<br />

4.2.1 Projekte in <strong>X4</strong><br />

Ein Projekt ist in <strong>X4</strong> die höchste Ebene im Repository. Projekte besitzen eine Dateisystem-<br />

Struktur. Ein Projekt kann Ordner, Prozesse, Prozess-Bausteine und andere Dateien<br />

enthalten.<br />

Jeder Benutzer kann nur Projekte im Repository Navigator sehen und bearbeiten,<br />

die in der benutzerspezifischen sogenannten user collection des <strong>X4</strong> Servers in /<strong>X4</strong>DB liegen. Nur ein <strong>X4</strong>-Administrator kann sämtliche<br />

Projekte aller Benutzer sehen und bearbeiten.<br />

4.2.2 Projekt öffnen und schließen<br />

Im Repository Navigator muss zunächst ein Projekt geöffnet werden, um die darin<br />

liegenden Dateien bearbeiten zu können.<br />

• Projekt öffnen: Auf das Projekt-Symbol doppeklicken.<br />

• Projekt schließen: Rechtsklicken und Close Project wählen.<br />

4.2.3 Neues Projekt anlegen<br />

1. Im Repository Navigator rechtsklicken, um das Kontextmenü aufzurufen.<br />

2. New > Project aufrufen, um ein neues Projekt-Ordner anzulegen.<br />

3. In Project name den Namen des Projekts eingeben und OK klicken.<br />

Empfohlene Ordnerstruktur<br />

<strong>SoftProject</strong> empfiehlt, zu jedem Projekt folgende Ordnerstruktur anzulegen:<br />

• Adapter: enthält sämtliche Transfer- und Funktionsadapter-Dateien der Prozesse im<br />

Projekt (.tra, .fa, .cs)<br />

• Data: enthält alle Daten in Form von XML-Dokumenten, Text- und Binärdateien (.xml,<br />

.csv, .sql)<br />

• Mappings: enthält sämtliche XSL-Stylesheets (Mappings; .xsl)<br />

• Processes: enthält sämtliche Prozess-Dateien (Hauptprozess und Subprozesse; .wrf)<br />

• Reports: (falls notwendig) enthält sämtliche Reports (XSL-FO-Stylesheets) des<br />

Projekts (.rep)<br />

4.2.4 Neuen Prozess oder Prozess-Baustein anlegen<br />

Um zu einem Projekt im Repository einen neuen Prozess, Ordner oder Prozess-Baustein<br />

hinzuzufügen, gehen Sie wie folgt vor:<br />

1. Auf den gewünschten Zielordner rechtsklicken, um das Kontextmenü zu öffnen.


4. Prozesse modellieren<br />

44<br />

2. New aufrufen und gewünschtes Element (Project, Folder, Process, Adapter etc.)<br />

auswählen, um den File creation wizard zu öffnen.<br />

3. Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben.<br />

4. Finish klicken.<br />

Das neu angelegte Element ist nun im Repository Navigator im markierten Ordner<br />

verfügbar und kann bearbeitet und konfiguriert werden.<br />

Mit der Funktion From Template im Kontextmenü des Repository Navigators<br />

können Sie Prozesse und Prozess-Bausteine anhand von Vorlagen erstellen.<br />

So können Sie schnell auf häufig wiederkehrende Muster zugreifen (siehe<br />

Abschnitt 5.2.4, „Vorlagen für Prozesse und Prozess-Bausteine verwenden “).<br />

4.2.5 Prozesse und Bausteine in verschiedenen Ansichten öffnen<br />

Um einen Prozess oder einen Prozess-Baustein im Repository Navigator zum Anzeigen<br />

oder Bearbeiten zu öffnen, haben Sie folgende Möglichkeiten:<br />

• Standard-Ansicht: Datei im Repository Navigator doppelklicken.<br />

• Vorschau: Rechtsklicken auf die Datei und Preview aufrufen.<br />

• Text Editor: Rechtsklicken auf die Datei und Open with > Text editor aufrufen.<br />

• XML Editor: Rechtsklicken auf die Datei und Open with > XML Editor aufrufen.<br />

Über die Registerkarten am unteren Rand des Editors können Sie zwischen folgenden<br />

Ansichten wählen (siehe Abschnitt 3.7.1, „Übersicht über den XML-Editor “):<br />

• Design: Tabellarische Baum-Darstellung von XML-Dokumenten<br />

• Source: XML-Quelltext anzeigen und bearbeiten<br />

4.2.6 Prozesse und Bausteine importieren und exportieren


4. Prozesse modellieren<br />

45<br />

Sie können Dateien aus dem Dateisystem ins Repository importieren oder umgekehrt<br />

Elemente aus dem Repository ins Dateisystem exportieren.<br />

Datei importieren<br />

• Menü File > Import aufrufen, um den Import Wizard zu starten.<br />

• Eine oder mehrere Dateien und Ordner aus dem Dateisystem auswählen.<br />

• In Target directory den gewünschten Zielordner im Repository angeben und ggf. mit<br />

Browse auswählen.<br />

• Finish klicken.<br />

Datei exportieren<br />

• Menü File > Export aufrufen, um den Export Wizard zu starten.<br />

• Eine oder mehrere Dateien und Ordner aus dem Repository auswählen.<br />

• In Target directory das gewünschte Zielverzeichnis im Dateisystem angeben und ggf.<br />

mit Browse auswählen.<br />

• Finish klicken.<br />

4.3 Prozess-Bausteine verwenden<br />

In diesem Abschnitt erfahren Sie, wie Sie die verschiedenen Bestandteile eines <strong>X4</strong>-<br />

Prozesses in einen Prozess einbinden können. Diese erfolgt soweit möglich anhand von<br />

Beispieldaten.<br />

4.3.1 Start, Stop und Übergang (Transition) einfügen<br />

Die Grundelemente jedes <strong>X4</strong>-Prozesses sind der Prozess-Beginn (Start-Baustein),<br />

mindestens ein Prozess-Ende (Stop-Baustein) und jeweils ein Übergang (Transition), der<br />

die einzelnen Prozess-Schritte verbindet und durch die Pfeilrichtung die Reihenfolge<br />

definiert.<br />

1. Neuen Prozess anlegen (siehe Abschnitt 4.2.4, „Neuen Prozess oder Prozess-Baustein<br />

anlegen “).<br />

Der Start-Baustein und ein Stop-Baustein sind in neu angelegten Prozessen bereits<br />

vorhanden.<br />

Zusätzliche Stop-Bausteine können Sie per Drag&Drop aus der Palette einfügen.<br />

2. Übergang herstellen, um Start und Stop zu verbinden.<br />

• Mit dem Mauszeiger über den Start-Baustein fahren, um ein kleines gelbes Dreieck (tslot)<br />

anzuzeigen.<br />

• Dreieck anklicken und zum Stop-Baustein ziehen, um einen Übergang herzustellen.


4. Prozesse modellieren<br />

46<br />

Übergänge mit Label beschriften<br />

Sie können Übergänge (Transitions) und Prozess-Bausteine beschriften, um die Lesbarkeit<br />

des Prozessdiagramms zu verbessern.<br />

Klicken Sie dazu auf das Element und geben in der Properties-Sicht in Label einen<br />

Beschriftungstext ein, beispielsweise nächster Datensatz.<br />

4.3.2 Transfer-Adapter anlegen und verwenden<br />

Um Daten verarbeiten zu können, müssen diese im Prozess verfügbar gemacht werden.<br />

Transfer-Adapter ermöglichen, über verschiedene Protokolle auf Daten zuzugreifen. Eine<br />

entsprechende Instanz des Transfer-Adapters muss nur noch für das Projekt angelegt und<br />

konfiguriert werden.<br />

Beispiel: Es soll ein Dateisystem-Transfer eingerichtet werden, der auf die Datei<br />

Camera.csv zugreift.<br />

1. Im Repository Navigator einen neuen Transfer-Adapter anlegen.<br />

• Auf den Projektordner rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü New > Transfer aufrufen, um den File Creation Wizard zu öffnen<br />

• Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben, Finish klicken.<br />

Der Adapter-Baustein wurde angelegt und wird zum Konfigurieren im Adapter-Editor<br />

geöffnet.<br />

2. Protokoll des Transfer-Adapters auswählen und konfigurieren.<br />

• In der Auswahlliste Adapter Type das gewünschte Protokoll auswählen.<br />

Im Beispiel: File System.<br />

Eine Parameter-Beschreibung weiterer Transfer-Adapter finden Sie<br />

im <strong>X4</strong> Reference Manual (englischsprachig), im Abschnitt 2.2 Transfer<br />

Configuration.<br />

• Wenn notwendig, weitere Felder ausfüllen.<br />

Pflichtfelder erkennen Sie am Symbol .<br />

• STRG+S drücken, um den Adapter zu speichern.<br />

3. Adapter-Baustein in den Prozess einfügen.<br />

• Den neu angelegten Adapter-Baustein aus dem Repository Navigator per Drag&Drop<br />

in den geöffneten Prozess ziehen.<br />

• Transfer-Adapter-Baustein auf der Übergangslinie zwischen Start und Stop fallen<br />

lassen, wenn die Linie dick wird.<br />

Der Adapter-Baustein ist nun Teil des Prozesses.<br />

4. Eigenschaften des gewählten Adapter-Bausteins in der Properties-Sicht festlegen.<br />

• Operation wählen, um festzulegen, was mit den Daten geschehen soll.<br />

Im Beispiel: Receive wählen, um Daten in den Prozess hineinzubekommen.


4. Prozesse modellieren<br />

47<br />

• Input source wählen, um festzulegen, ob eine einzelne Datei (Actions) oder ein<br />

Ordner (Directory) gelesen werden soll.<br />

Beispiel: Actions wählen, um nur eine Datei zu lesen.<br />

• In File Name den Namen der zu lesenden Datei eingeben.<br />

Im Beispiel: Cameras.csv<br />

Der Adapter ist nun einsatzbereit.<br />

4.3.3 Funktions-Adapter-Baustein anlegen und verwenden<br />

Funktions-Adapter sind Prozess-Bausteine, die grundlegende Funktionen bereitstellen,<br />

etwa Zeichensatz-Konvertierungen oder Zugriff auf ein SAP-System ermöglichen. Da das<br />

<strong>X4</strong> Front-End hauptsächlich mit XML-Daten arbeitet, werden mit Funktions-Adapter meist<br />

XML-Dokumente erzeugt oder verändert.<br />

Als Ausgabe erzeugen Funktions-Adapter meist XML-Daten, die in einem nächsten<br />

Prozess-Schritt weiterverarbeitet werden.<br />

Beispiel: Es soll ein ein Adapter eingerichtet werden, der eine CSV-Text-Datei in XML<br />

konvertiert. Die Datei Camera.csv hat folgenden Inhalt:<br />

"Nummer","Name","Marke","Description","Preis","Waehrung"<br />

"1","xvc","Minolta","3x","400","Euro"<br />

"2","Powershot","Canon","5x","100","Euro"<br />

"3","Tp","Yashika","3x","300","Euro"<br />

"4","C10","Leika","15x","500","Euro"<br />

1. Im Repository Navigator einen neuen Funktions-Adapter anlegen.<br />

• Auf den Projektordner rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü New > Adapter aufrufen, um den File Creation Wizard zu öffnen.<br />

• Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben, Finish klicken.<br />

Der Adapter-Baustein wurde angelegt und wird zum Konfigurieren im Editor-Bereich<br />

geöffnet.<br />

2. Protokoll des Transfer-Adapters auswählen und konfigurieren.<br />

• In der Auswahlliste Adapter Type den gewünschten Adapter-Typ auswählen.<br />

Im Beispiel: CSVReader.<br />

Eine Parameter-Beschreibung weiterer Funktions-Adapter finden Sie im <strong>X4</strong><br />

Reference Manual (englischsprachig), im Abschnitt 2.4 Adapter Configuration.<br />

• Wenn notwendig, weitere Felder ausfüllen.<br />

Pflichtfelder erkennen Sie am Symbol .<br />

Im Beispiel CSVReader:<br />

• In DELIMITER: , (Komma) angeben, um das Trennzeichen in der CSV-Datei zu<br />

definieren.


4. Prozesse modellieren<br />

48<br />

• In QUOTE: " (Anführungszeichen) angeben, mit dem Textinhalte eingeschlossen<br />

werden.<br />

• In ROW_NAME: camera angeben, um das umschließende Element jedes Datensatzes<br />

im XML-Output zu benennen.<br />

• In ROOT_NAME: products angeben, um das Wurzel-Element im XML-Output zu<br />

benennen.<br />

• STRG+S drücken, um den Adapter zu speichern.<br />

3. Adapter-Baustein in den Prozess einfügen.<br />

• Den neu angelegten Adapter-Baustein aus dem Repository Navigator per Drag&Drop<br />

in den geöffneten Prozess ziehen.<br />

Im Beispiel: zwischen Transfer-Adapter und Stop-Baustein einfügen.<br />

4. Eigenschaften des gewählten Adapter-Bausteins in der Properties-Sicht festlegen.<br />

• In Operation festlegen, was mit den Daten geschehen soll.<br />

Im Beispiel: Receive angeben, um Daten in den Prozess hineinzubekommen.<br />

• In Input source festzulegen, ob eine einzelne Datei (Actions) oder ein Ordner<br />

(Directory) gelesen werden soll.<br />

Im Beispiel Actions wählen, um nur eine Datei zu lesen.<br />

• In File Name den Pfad und Namen der zu lesenden Datei eingeben.<br />

Im Beispiel Camera.csv angeben.<br />

Der Adapter ist nun einsatzbereit.<br />

4.3.4 XML-Dokument erstellen<br />

Eine einfache Möglichkeit, strukturierte Daten abzulegen ist, diese in XML-Dokumenten zu<br />

speichern. Daten werden zwischen den einzelnen Prozess-Bausteinen in der Regel in XML<br />

ausgetauscht.<br />

Beispiel: Die Inhalte der CSV-Datei Camera.csv wurden ausgelesen und sollen nun in das<br />

XML-Dokument Camera.xml gespeichert werden.<br />

1. Im Repository Navigator ein neues XML-Dokument anlegen.<br />

• Auf den Projektordner rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü New > XML Document aufrufen, um den File Creation Wizard zu<br />

öffnen.<br />

• Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben, Finish klicken.<br />

Das XML-Dokument wurde angelegt und wird im XML-Editor geöffnet (siehe<br />

Abschnitt 3.7.1, „Übersicht über den XML-Editor “).<br />

2. XML-Dokument per Drag&Drop aus dem Repository Navigator in den Prozess einfügen.<br />

Im Beispiel: Zwischen Funktions-Adapter und Stop-Baustein einfügen.


4. Prozesse modellieren<br />

49<br />

3. In der Properties-Sicht in Operation für das XML-Dokument festlegen, ob die Datei<br />

gelesen (Read) oder geschrieben (Write) werden soll.<br />

Im Beispiel: Read wählen, da die Daten aus dem Funktions-Adapter in das XML-Dokument<br />

geschrieben werden sollen.<br />

Die Daten aus der CSV-Datei werden nun im Beispiel im XML-Dokument gespeichert,<br />

wenn der Prozess ausgeführt wird.<br />

4.3.5 XSL-Mapping anlegen und verwenden<br />

Häufig müssen Datenstrukturen umgewandelt werden, das heißt von der Struktur des<br />

Quelldokuments in eine andere Struktur transformiert werden. Hierfür gibt es in <strong>X4</strong> die<br />

sogenannten XSL-Mappings. Die technische Umsetzung eines Mappings erfolgt mithilfe<br />

der XML-Technologien XSLT und XPath in einem XSL-Stylesheet.<br />

Beispiel: Die Daten aus der CSV-Datei, die mittlerweile in XML vorliegen, sollen in eine<br />

HTML-Tabelle umgewandelt werden.<br />

1. Im Repository Navigator ein neues XSL-Mapping (XSL-Stylesheet) anlegen.<br />

• Auf den Projektordner rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü New > XSLT Stylesheet aufrufen, um den File Creation Wizard zu<br />

öffnen.<br />

• Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben, Finish klicken.<br />

Das XSL-Mapping wurde angelegt und wird im XSL-Editor geöffnet (siehe<br />

Abschnitt 3.6.1, „Überblick über den XSL-Editor “). Hier können Sie in der dreispaltigen<br />

Design-Ansicht das Mapping grafisch erstellen oder in der Quelltext-Ansicht<br />

bearbeiten (Source-Ansicht).<br />

2. Grundstruktur des Zieldokuments im XSL-Mapping anlegen.<br />

• Im Stylesheet-Bereich auf das Root-Template (template match="/") rechtsklicken,<br />

um das Kontextmenü zu öffnen.<br />

• Im Kontextmenü Add Child > Element wählen, um sämtliche benötigten Elemente<br />

mit der entsprechenden Hierarchie einfügen.<br />

Add Child > Text wählen, um die Kopfzeilen-Beschriftung im Tabellenkopf<br />

einzufügen.<br />

Im Beispiel: Die Struktur des Zieldokuments ist das HTML-Grundgerüst mit einer<br />

Tabellenkopfzeile und lautet:<br />


4. Prozesse modellieren<br />

50<br />

<br />

<br />

KameraBeschreibungPreis<br />

<br />

<br />

<br />

Mit virtuellen Knoten<br />

Dateien übernehmen.<br />

können Sie auch Strukturen aus XML- und Schema-<br />

Rechtsklicken Sie dazu im Stylesheet-Bereich auf das Element, das<br />

Unterelemente aus einer externen Datei erhalten soll, und wählen über das<br />

Kontextmenü Assign Schema eine XML-Quelldatei aus. Deren Elemente werden<br />

nun als virtuelle Knoten unterhalb des gewählten Elements eingefügt. Durch<br />

Doppelklicken übernehmen Sie diese als Knoten ins XSL-Mapping.<br />

3. XML-Quelldokument in den XSL-Editor einfügen, um das Mapping grafisch zu erstellen.<br />

• XML-Quelldokument (XML-Dokument oder XML-Schema) aus dem Repository<br />

Navigator per Drag&Drop in die linke Spalte des XSL-Editors, den Quelldokument-<br />

Bereich, ziehen.<br />

Das XML-Quelldokument wird in einer Baumansicht dargestellt.<br />

• Alle Unterelemente ausklappen, um vollständige Struktur anzuzeigen.<br />

4. For-each-Baustein einfügen, um eine Zielstruktur aufzubauen, die sich pro Datensatz<br />

wiederholen soll.<br />

• Auf das übergeordnete Element rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü Add Child > xsl:for-each aufrufen, um ein xsl:for-each-<br />

Schleifenelement einzufügen.<br />

Im Beispiel: xsl:for-each innerhalb des table-Elements einfügen, um HTML-<br />

Tabellenzeilen dynamisch zu erzeugen.<br />

• Unterhalb des xsl:for-each-Elements die sich wiederholenden Strukturelemente<br />

einfügen.<br />

Im Beispiel: Innerhalb des xsl:for-each-Elements über das Kontextmenü und Add<br />

Child > Element folgende Struktur anlegen, die eine (noch) leere HTML-Tabellenzeile<br />

darstellt:<br />

<br />

<br />

<br />

• Quellknoten anklicken und per Drag&Drop auf das xsl:for-each-Element ziehen, um<br />

einen XPath-Ausdruck zu erzeugen.<br />

Im Beispiel: Camera-Element und xsl:for-each-Element verbinden, um jeden<br />

Kamera-Datensatz in einer eigenen Zeile abzubilden.<br />

5. Mit xsl:value-of Knoteninhalte vom Quelldokument ins Zieldokument übernehmen.<br />

• Quellknoten anklicken und per Drag&Drop auf den Zielknoten ziehen.


4. Prozesse modellieren<br />

51<br />

Im Beispiel: Name-Element und erstes td-Element, Description mit dem zweiten td-<br />

Element und Preis mit dem dritten td-Element verbinden.<br />

Für jede Verbindung wird eine Linie im Verknüpfungsbereich angezeigt.<br />

6. In die Source-Ansicht wechseln, um weitere XSLT-Funktionen einzusetzen.<br />

Im Beispiel: Die Elementinhalte von Preis und Währung sollen über die Funktion concat<br />

zusammengeführt werden.<br />

• Registerkarte Source wählen, um das XSL-Mapping im Quelltext anzuzeigen.<br />

• XSLT-Syntax bearbeiten, im Beispiel die Zeile ersetzen durch: .<br />

• STRG+S drücken, um das XSL-Mapping zu speichern.<br />

•<br />

In der Symbolleiste<br />

7. XSL-Mapping in den Prozess einfügen.<br />

klicken, um das XSL-Mapping testweise auszuführen.<br />

• Das XML-Quelldokument aus dem Repository Navigator per Drag&Drop in den<br />

geöffneten Prozess ziehen.<br />

Im Beispiel: zwischen XML-Dokument und Stop-Baustein einfügen.<br />

Ein einfaches Mapping von XML nach HTML wurde erstellt. Wenn der Prozess ausgeführt<br />

wird, werden nun im Beispiel die XML-Daten in eine HTML-Seite transformiert.<br />

4.3.6 Variable verwenden<br />

In Variablen lassen sich temporär Daten speichern, während ein Prozess ausgeführt wird.<br />

Jede Variable muss zunächst initialisiert werden, also einen eindeutigen Namen erhalten<br />

und mit einem Wert belegt werden (Put-Operation). In späteren Prozess-Schritten kann<br />

dann per Get-Operation auf die Variable zugeriffen werden. Schließlich können Variablen-<br />

Inhalte über die Remove-Operation aus dem Speicher gelöscht werden.<br />

Variable einfügen<br />

1. Aus der Palette eine Variable per Drag&Drop in den Prozess ziehen.


4. Prozesse modellieren<br />

52<br />

Im Beispiel: Variablen-Symbol<br />

Baustein einfügen.<br />

per Drag&Drop zwischen dem Mapping und den Stop-<br />

2. In der Properties-Sicht die Eigenschaften festlegen, um die Variable zu initialisieren.<br />

• In Name einen eindeutigen Variablennamen eingeben (z.B. Put E-Mail).<br />

• In Operation den Wert Put wählen, um die Daten aus dem vorangegangenen Prozess-<br />

Schritt in die Variable zu laden.<br />

Die Variable wurde nun angelegt und kann verwendet werden.<br />

Weitere Operationen mit Variablen<br />

• Variablen-Inhalt in späteren Prozess-Schritten auslesen: Die Variable mit demselben<br />

Namen erneut einfügen und die Eigenschaft Operation auf Get setzen.<br />

• Variablen-Inhalt aus dem Speicher löschen: Die Variable mit demselben Namen erneut<br />

einfügen und die Eigenschaft Operation auf Remove setzen.<br />

• Innerhalb von XSL-Mappings auf Variablen mittels context://-Protokoll (siehe <strong>X4</strong><br />

Reference Manual in Abschnitt 3.2 Context Protocol).<br />

4.3.7 Subprozess anlegen<br />

Bei umfangreicheren Prozessen ist es sinnvoll, einzelne Segmente in Subprozesse zu<br />

modularisieren. So wird der Prozess übersichtlicher und die Subprozesse lassen sich<br />

mehrfach verwenden. Prozesse lassen sich nahezu beliebig tief ineinander verschachteln.<br />

Subprozesse werden als separate .wrf-Dateien gespeichert.<br />

Prozesse lassen sich wie andere Prozess-Bausteine per Drag&Drop aus dem Repository<br />

Navigator in die Zeichnungsfläche des Prozess-Designers ziehen.<br />

Prozess-Bausteine als Subprozess auslagern<br />

1. Prozess-Bausteine (mindestens 2) markieren, die ausgelagert werden sollen.<br />

Im Beispiel: Den Transfer-Adapter, den Funktions-Adapter und das XML-Dokument<br />

gleichzeitig auswählen.<br />

2. Funktion Pack as nested process aufrufen.<br />

• Auf der Zeichnungsfläche rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü Pack as nested process wählen, um den Wizard aufzurufen.<br />

• Im Fenster Process File Naming den Zielordner wählen und in File Name den<br />

Dateinamen des Subprozesses eingeben.<br />

• Finish klicken.<br />

Der Subprozess mit den markierten Bausteinen wird als separater Prozess-Baustein<br />

angelegt. Im Hauptprozess werden die gewählten Bausteine automatisch durch den neu<br />

angelegten Prozess-Baustein ersetzt.<br />

4.3.8 Gabelung (Fork) und Zusammenführung (Join) einfügen


4. Prozesse modellieren<br />

53<br />

Um zwei oder mehrere voneinander unabhängige Anweisungen zu starten, können Sie<br />

eine Gabelung (Fork-Baustein) verwenden. Die Anweisungen können dann auf denselben<br />

Input, etwa die Daten eines vorherigen Prozess-Bausteins, zugreifen.<br />

Wieder zusammenführen können Sie die separaten Anweisungen mit einem Join-<br />

Baustein. Eine Anweisung innerhalb einer Gabelung kann aus beliebig vielen Prozess-<br />

Schritten bzw. Bausteinen bestehen.<br />

Abbildung 4.1: Gabelung (Fork) und Zusammenführung (Join)<br />

Die Anweisungen innerhalb einer Gabelung werden nicht parallel abgearbeitet, sondern<br />

anhand einer Priorität gesteuert, die an den Übergängen durch eine Zahl dargestellt wird.<br />

Die Priorität der Anweisungen können Sie in den Eigenschaften des Übergangs festlegen:<br />

1. Fork-Baustein einfügen, um mehrere voneinander unabhängige Anweisungen zu<br />

definieren.<br />

• Aus der Palette einen Fork-Baustein per Drag&Drop in den Prozess ziehen.<br />

• Übergang vom vorherigen Prozess-Baustein zum Fork-Baustein herstellen.<br />

• Übergänge vom Fork-Baustein zu mindestens 2 dahinter liegenden Anweisungen<br />

herstellen.<br />

2. Prioriäten der einzelnen Anweisungen festlegen, um die Ausführ-Reihenfolge festzulegen.<br />

• Übergang anklicken und in der Properties-Sicht in Priority den gewünschten Rang<br />

auswählen. 1 entspricht dabei der höchsten Priorität, die gewählte Anweisung wird<br />

also zuerst ausgeführt.<br />

• Wenn Sie Übergänge beschriften möchten, um das Prozess-Diagramm lesbarer zu<br />

gestalten: Einen Übergang anklicken und in der Properties-Sicht in Label einen<br />

Beschriftungstext eingeben.<br />

3. Join-Baustein per Drag&Drop auf die Zeichnungsfläche ziehen und Übergänge<br />

hinzufügen.<br />

Die Anweisungen innerhalb der Gabelung werden nun in der angegebenen Reihenfolge<br />

ausgeführt.<br />

4.3.9 Daten mit Merge zusammenführen


4. Prozesse modellieren<br />

54<br />

In vielen Fällen ist es sinnvoll, dass Daten, die aus unterschiedlichen Quellen stammen,<br />

in einem einzigen XML-Dokument zur Verfügung stehen. Der Merge-Baustein wird meist<br />

hinter der Zusammenführung einer Gabelung (Join) verwendet, um die dort verarbeiteten<br />

Daten zu vereinen. Die durch einen Merge-Baustein erzeugte XML-Struktur enthält<br />

ein Root-Element , das die verschiedenen XML-Daten der Quellen enthält,<br />

beispielsweise:<br />

<br />

<br />

<br />

<br />

...<br />

<br />

Um Daten in einem XML-Dokument zusammenzuführen, ziehen Sie aus der Palette einen<br />

Merge-Baustein per Drag&Drop hinter einen Join-Baustein. Weitere Einstellungen sind<br />

nicht notwendig.<br />

4.3.10 Bedingungen und Verzweigungen mit Condition erstellen<br />

Mit dem Condition-Baustein können Sie Verzweigungen im Prozess abbilden, wobei<br />

jeder Zweig eine Bedingung enthält. Wird der Prozess ausgeführt, werden die Daten aus<br />

dem vorangegangenen Prozess-Schritt ausgewertet und es wird eine Fallunterscheidung<br />

getroffen.<br />

So kann beispielsweise überprüft werden, ob eine Adapter-Datenquelle noch Daten liefert,<br />

andernfalls wird der Prozess auf einen Stop-Baustein umgeleitet und damit beendet. Auch<br />

Schleifen können so implementiert werden.<br />

1. Condition-Baustein einfügen, um Verzweigungen definieren zu können.<br />

• Aus der Palette einen Condition-Baustein per Drag&Drop in den Prozess ziehen.<br />

• Übergang vom vorherigen Prozess-Baustein zum Condition-Baustein herstellen.<br />

• Übergänge vom Condition-Baustein zu mindestens 2 verschiedenen dahinter<br />

liegenden Anweisungen herstellen.<br />

2. Condition-Baustein doppelklicken, um den Condition Editor aufzrufen.


4. Prozesse modellieren<br />

55<br />

3. Bedingungen für jede Verzweigung festlegen.<br />

Wenn Sie für eine Verzweigung keine Bedingung festgelegt haben, dann wird<br />

diese immer ausgeführt. Dies wird durch ein verändertes Symbol des Condition-<br />

Bausteins dargestellt.<br />

• Auf einen Übergang hinter dem Condition-Baustein klicken, um eine Verzweigung zu<br />

wählen.<br />

Der gewählte Übergang wird nun mit einer dicken, rot gestrichtelten Linie dargestellt.<br />

• Auf Insert logical operations ... klicken, um die Bedingung bearbeiten zu können.<br />

Jede Bedingung kann aus mehreren Bedingungselementen bestehen, die<br />

Sie über logische Operatoren (AND, OR und NOT) verknüpfen können.<br />

Bedingungselemente können Sie über die entsprechenden Schaltflächen links<br />

im Condition-Bereich einfügen.<br />

• In If result of den Prozess-Baustein auswählen, dessen Daten bedingt verarbeitet<br />

werden sollen.<br />

Hier stehen sämtliche Bausteine des Prozesses zur Auswahl. Verwenden Sie<br />

denjenigen, der unmittelbar vor dem Condition-Baustein steht.<br />

• Vergleichsoperator wählen (


4. Prozesse modellieren<br />

56<br />

mit put eine Variable vor der Schleife, die sie innerhalb der Schleife mit get<br />

auslesen und am Ende der Schleife wieder mit put überschreiben.<br />

4.3.11 Datenbank-Verbindung herstellen<br />

Um innerhalb eines <strong>X4</strong>-Prozesses eine Verbindung zu relationalen Datenbanken (z.B.<br />

Oracle, MSSQL) aufzubauen, sind zwei Prozess-Bausteine notwendig:<br />

• Im SQL-Anweisungs-Baustein (SQL Query) definieren Sie die Operation, die auf der<br />

Datenbank ausgeführt werden soll, beispielsweise eine SELECT-Abfrage oder eine<br />

UPDATE-Anweisung. Diese SQL-Anweisungen werden in einer spezifischen XML-<br />

Struktur im Prozess-Baustein gespeichert und an den darauffolgenden Prozess-<br />

Baustein weitergegeben.<br />

• Im Datenbank-Verbindungs-Baustein (Database Connection) wird nun eine<br />

Verbindung zur Datenbank aufgebaut. Dies erfolgt entweder direkt per JDBC oder über<br />

eine DataSource-Verbindung innerhalb der J2EE-Plattform. Dieser Prozess-Baustein<br />

gibt Daten im XML-Format aus.<br />

Beispiel: Es soll eine Verbindung zu einer HSQL-Datenbank, die zum Installationsumfang<br />

des <strong>X4</strong> Servers gehört, über eine DataSource hergestellt werden.<br />

1. Im Repository Navigator eine Datenbank-Verbindung anlegen.<br />

• Auf den Projektordner rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü New > Database Connection aufrufen, um den File Creation<br />

Wizard zu öffnen.<br />

• Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben, Finish klicken.<br />

Die Datenbank-Verbindung wurde angelegt und wird zum Konfigurieren geöffnet.<br />

2. Datenbank-Verbindungstyp wählen und Verbindungs-Parameter definieren.


4. Prozesse modellieren<br />

57<br />

• In Database Access Interface zwischen JDBC oder DataSource (J2EE) wählen, um<br />

den Datenbank-Verbindungstyp festzulegen.<br />

Im Beispiel: DataSource (J2EE) wählen, um auf eine in <strong>X4</strong> integrierte HSQL-<br />

Datenbank zuzugreifen.<br />

Eine Parameter-Beschreibung für JDBC-Verbindungen finden Sie im <strong>X4</strong><br />

Reference Manual (englischsprachig), im Abschnitt 2.3.1 JDBC Connection.<br />

• In DataSource ID den Namen der gewünschten DataSource eingeben.<br />

Im Beispiel: java:DefaultDS eingeben.<br />

• Test Connection klicken, um den korrekten Verbindungsaufbau zu prüfen.<br />

• STRG+S drücken, um die Datenbank-Verbindung speichern.<br />

3. SQL-Anweisung erstellen und testen.<br />

• Auf den Projektordner rechtsklicken, um das Kontextmenü aufzurufen.<br />

• Im Kontextmenü New > SQL Query aufrufen, um den File Creation Wizard zu<br />

öffnen.<br />

• Im File Creation Wizard den Zielordner wählen und in File Name den Dateinamen<br />

eingeben, Finish klicken.<br />

Eine leere SQL-Anweisung wurde angelegt und wird zum Konfigurieren geöffnet.<br />

• In Connection die Datenbank-Verbindung auswählen, um die SQL-Anweisung in<br />

dieser Ansicht testen zu können.<br />

• Im mittleren Textfeld die eigentliche SQL-Anweisung eingeben.


4. Prozesse modellieren<br />

58<br />

Im Beispiel: SELECT * FROM JMS_ROLES eingeben.<br />

• Mehrere SQL-Anweisungen speichern: Auf Add klicken. Die verschiedenen<br />

SQL-Anweisungen werden dann beim Ausführen dieses Prozess-Bausteins<br />

hintereinander abgearbeitet und in einem einzigen XML-Dokument als<br />

Ergebnis ausgegeben.<br />

• Alle umschließenden XML-Elemente umbenennen: In Result Element<br />

den gewünschten Element-Namen eingeben. Im ausgegebenen XML-<br />

Dokument wird dann das Elternelement aller Datenzeilen ersetzt.<br />

• Zahl der Datensätze beschränken: Use Cursor aktivieren und in Fetch<br />

Size die Anzahl der gewünschten Datensätze angeben, die bei der SQL-<br />

Anweisung ausgegeben werden sollen.<br />

• Execute Query klicken, um die SQL-Anweisung zu testen.<br />

Die Ergebnisse der SQL-Anweisung werden in der Registerkarte Data tabellarisch, in<br />

der Registerkarte XML in der generierten XML-Struktur angezeigt.<br />

• STRG+S drücken, um die Datenbank-Verbindung speichern.<br />

Vorlagen für Datenbank-Mappings erstellen: Execute Query klicken, dann auf<br />

Generate INSERT Template, Generate UPDATE Template oder Generate<br />

DELETE Template klicken. Dann werden XML-Dokumente angelegt, die<br />

Strukturinformationen einer SQL-Anweisung enthalten.<br />

Ergebnis der SQL-Anweisung als XML-Dokument speichern: Save Result XML<br />

klicken.<br />

4. Im Prozess den Datenbank-Verbindungsbaustein hinter den SQL-Anweisungs-Baustein<br />

anordnen.<br />

• Den SQL-Anweisungs-Baustein aus dem Repository Navigator per Drag&Drop in den<br />

Prozess ziehen.<br />

• In der Properties-Sicht in Operation Read wählen.<br />

• Den Datenbank-Verbindungs-Baustein hinter dem SQL-Anweisungs-Baustein in den<br />

Prozess einfügen.<br />

Die SQL-Anweisung kann nun mit der darauf folgenen Datenbank-Verbindung<br />

ausgeführt werden.<br />

4.4 Prozess-Bausteine parametrieren<br />

In diesem Abschnitt erfahren Sie, wie Prozess-Bausteine parametriert bzw. konfiguriert<br />

werden können, um in Prozessen verwendet zu werden. Außerdem wird die Möglichkeit<br />

beschrieben, innerhalb eines Prozesses Platzhalter zu verwenden und Parameter<br />

dynamisch zu setzen, um den Prozess weiter zu automatisieren.<br />

4.4.1 Parametrierungs-Möglichkeiten


4. Prozesse modellieren<br />

59<br />

Es gibt folgende Möglichkeiten, je nach Anwendungszweck Prozess-Bausteine zu<br />

parametrieren:<br />

• Repository-Dateien konfigurieren: Prozess-Baustein-Dateien aus dem Repository per<br />

Doppelklick im jeweiligen Editor öffnen (z. B. Funktions-Adapter im Adapter-Editor,<br />

XML-Dokumente im XML-Editor).<br />

Bearbeitungen werden in der entsprechenden Datei im Repository gespeichert.<br />

• Eigenschaften bearbeiten: Die Prozess-Bausteine eines geöffneten Prozesses in der<br />

Properties-Sicht anpassen (z. B. die Eigenschaft Operation setzen).<br />

Diese Konfiguration wird im geöffneten Prozess gespeichert.<br />

• Benutzerdefinierte Parameter mit Platzhaltern verwenden: Für einige Bausteine eines<br />

Prozesses lassen sich benutzerdefinierte Parameter (Custom Parameters) definieren<br />

(siehe Abschnitt 4.4.2, „Benutzerdefinierte Parameter setzen “).<br />

Diese Konfiguration wird im geöffneten Prozess gespeichert.<br />

Als benutzerdefinierte Parameterwerte können Sie eine Reihe von in <strong>X4</strong> vordefinierten<br />

Platzhalter verwenden, die zur Laufzeit des Prozesses gesetzt werden. Platzhalter sind<br />

z. B. %PID% (aktuelle Prozess-ID) oder %NOW% (aktuelles Datum und Uhrzeit).<br />

• Dynamische Parameter erzeugen: Innerhalb eines Prozesses können Sie in<br />

Abhängigkeit von verarbeiteten Daten mit dynamischen Parametern verschiedene<br />

Prozess-Bausteine ansteuern und mit ConditionState Statusinformationen erzeugen,<br />

die von Bedingungen (Condition-Bausteinen) ausgewertet werden. Dynamische<br />

Parameter werden in XSL-Mappings als Processing Instruction erzeugt und vom<br />

darauf folgenden Prozess-Baustein (z.B. einem Transfer-Adapter) verarbeitet (siehe<br />

Abschnitt 4.4.3, „Dynamische Parameter erzeugen “).<br />

Die Konfiguration wird zur Laufzeit des Prozesses dynamisch erzeugt.<br />

• Dynamische Parameter über iXmap-Datei erzeugen (veraltet): Sie können statt der<br />

ProcessingInstructions-Implementierung auch mit einem XSL-Mapping ein XML-<br />

Dokument erzeugen, das DynamicParameter, ConditionState etc. enthält. Mehr<br />

Informationen finden Sie im <strong>X4</strong> Reference Manual (englischsprachig) im Abschnitt<br />

5.1.3 Legacy Process Control Mappings with iXmap.<br />

Priorisierung der Parameter<br />

Beachten Sie folgende Priorisierung bei der Parametrierung:<br />

• Benutzerdefinierte Parameter (Custom Parameters) überschreiben die Konfiguration<br />

von Prozess-Bausteinen im Repository (beispielsweise Funktions-Adapter).<br />

• Dynamische Parameter überschreiben gesetzte benutzerdefinierte Parameter und<br />

die Konfiguration von Prozess-Bausteinen im Repository (beispielsweise Funktions-<br />

Adapter).<br />

4.4.2 Benutzerdefinierte Parameter setzen<br />

Für bestimmte Prozess-Bausteine eines geöffneten Prozesses (für XSL-Mappings, Reports,<br />

Datenbank-Verbindungen, Transfer- und Funktions-Adapter) lassen sich benutzerdefinierte<br />

Parameter (Custom Parameters) definieren.


4. Prozesse modellieren<br />

60<br />

Als benutzerdefinierte Parameterwerte können Sie eine Reihe von in <strong>X4</strong> vordefinierten<br />

Platzhalter verwenden, die zur Laufzeit des Prozesses gesetzt werden. Platzhalter sind z. B.<br />

%PID% (aktuelle Prozess-ID) oder %NOW% (aktuelles Datum und Uhrzeit).<br />

1. Fenster Custom Parameters aufrufen, um benutzerdefinierte Parameter zum Prozess-<br />

Baustein bearbeiten zu können.<br />

• Prozess-Baustein im Prozess-Designer markieren.<br />

• In der Properties-Sicht bei Custom Parameters auf [ ] klicken, um anzuzeigen.<br />

• klicken, um das Fenster Custom Parameters aufzurufen.<br />

2. In Name den Namen des benutzerdefinierten Parameters eingeben.<br />

• XSL-Mappings und Reports: Im Stylesheet können Sie den hier gesetzten Namen<br />

als Parameter ansprechen und den zugehörigen Wert übergeben, z. B. einen<br />

benutzerdefinierten Parameter PDFPath mit .<br />

• Adapter und Datenbank-Verbindungen: Die Bezeichnung des zu überschreibenden<br />

Parameters verwenden, z. B. bei einem XPath-Adapter-Baustein den Parameter-Namen<br />

XPath.<br />

3. In Value den zu überschreibenden Parameter-Wert eingeben.<br />

Hier können Sie Platzhalter einfügen, die beim Ausführen des Prozesses von <strong>X4</strong> durch die<br />

jeweils aktuellen Werte ersetzt werden, z. B. %PID% durch die aktuelle Prozess-ID.<br />

Eine vollständige List der verfügbaren Platzhalter finden Sie im <strong>X4</strong> Reference<br />

Manual (englischsprachig) im Abschnitt 2.1 Parameter Placeholders.<br />

4. Wenn notwendig weitere benutzerdefinierte Parameter verwalten:<br />

• Add klicken, um weitere benutzerdefinierte Parameter hinzuzufügen.<br />

• Remove klicken, um benutzerdefinierte Parameter aus der Liste zu löschen.<br />

• Mit Up und Down können Sie die Reihenfolge der Parameter in der Liste verändern.<br />

5. OK klicken, um die benutzerdefinierten Parameter anzulegen.<br />

4.4.3 Dynamische Parameter erzeugen


4. Prozesse modellieren<br />

61<br />

Innerhalb eines Prozesses können Sie in Abhängigkeit von verarbeiteten Daten mit<br />

sogenannten dynamischen Parametern Prozess-Bausteine ansteuern und bereits gesetzte<br />

Parameter überschreiben. Dynamische Parameter werden in XSL-Mappings als Processing<br />

Instruction erzeugt und vom darauf folgenden Prozess-Baustein (beispielsweise einem<br />

Transfer-Adapter) verarbeitet.<br />

1. XSL-Mapping im Prozess vor dem zu parametrierenden Adapter oder Datenbank-<br />

Verbindung positionieren.<br />

Hierbei haben Sie mehrere Möglichkeiten:<br />

• Ein einzelnes XSL-Daten-Mapping einsetzen, das XML-Daten transformiert und<br />

gleichzeitig dynamisch Processing-Instruction-Definitionen enthält.<br />

• Ein separates XSL-Mapping, das nur die Process-Instructions generiert, beispielsweise<br />

wenn eine Datei untransformiert an einen Transfer-Adapter übergeben werden soll.<br />

In diesem Fall ist es erforderlich, eine Gabelung (mithilfe von Fork- und Join-<br />

Bausteinen) zu verwenden; in eine Anweisung der Gabelung setzen Sie das XSL-<br />

Mapping, in eine zweite Anweisung den zu übergebenden Prozess-Baustein.<br />

2. Processing Instruction im XSL-Mapping nach folgendem Muster definieren:<br />

<br />

ParameterName="ParameterValue"<br />

3. ParameterName durch den gewünschten Parameter-Namen ersetzen.<br />

Eine Beschreibung der Parameter für Transfer- und Funktions-Adapter sowie<br />

für Datenbankverbindungs-Bausteine finden Sie im <strong>X4</strong> Reference Manual<br />

(englischsprachig) in den Abschnitten 2.2 Transfer Configuration bis 2.4 Adapter<br />

Configuration.<br />

4. ParameterValue durch den gewünschten Wert ersetzen, meist in Form eines XSL-Befehls.<br />

5. Wenn das XSL-Mapping ausschließlich dynamische Parameter erzeugen soll: Zusätzlich<br />

mit festlegen, dass das XSL-<br />

Mapping kein Ergebnis-Dokument erzeugt.<br />

Beachten Sie zudem, dass das XSL-Mapping ein Wurzel-Element generieren muss, damit<br />

das XSL-Mapping ausgeführt und ein gültiges XML-Dokument erzeugt werden kann.<br />

Beispiel<br />

Ein aus einer XML-Datei ausgelesener Dateiname soll als dynamischer Parameter an einen<br />

Filesystem-Transfer-Adapter übergeben werden.


4. Prozesse modellieren<br />

62<br />

Abbildung 4.2: Filesystem-Transfer-Adapter per XSL-Mapping ansteuern<br />

Im Beispiel besteht das XSL-Mapping aus folgendem Quelltext:<br />

Abbildung 4.3: Dynamisch gesetzter Dateiname für den FileSystem-Transfer-Adapter<br />

Weitere Processing Instructions<br />

Analog zu den oben beschriebenen dynamischen Parametern können Sie in XSL-Mappings<br />

weitere Processing Instructions definieren, die von <strong>X4</strong> ausgewertet werden.<br />

• ConditionState: dynamisch generierte Statusinformationen, die von<br />

Bedingungen (Condition-Bausteinen) ausgewertet werden (siehe Abschnitt 4.4.4,<br />

„Statusinformationen mit ConditionState erzeugen “).<br />

• LogInfo: benutzerdefinierte Ausgaben ins Log erzeugen<br />

• NoResult: die Ausgabe eines Ergebnis-Dokuments mit unterdrücken.<br />

Eine ausführliche Beschreibung dieser Processing Instructions finden Sie im <strong>X4</strong><br />

Reference Manual (englischsprachig) im Abschnitt 5.1.2.1 Processing Instructions<br />

Implementation.<br />

4.4.4 Statusinformationen mit ConditionState erzeugen<br />

Mit einem XSL-Mapping können Sie abhängig von verarbeiteten Daten<br />

Statusinformationen als Processing Instruction erzeugen, die von einem Condition-<br />

Baustein ausgewertet werden. Je nach Status können Sie so entsprechend definierte<br />

Verzweigungen ausführen lassen.<br />

1. Leeres XSL-Mapping im Prozess vor einem Condition-Baustein positionieren.<br />

2. Processing Instruction(s) im XSL-Mapping nach folgendem Muster definieren:<br />


4. Prozesse modellieren<br />

63<br />

value<br />

<br />

3. value durch einen Wert aus dem verarbeiteten XML-Dokument ersetzen.<br />

Beispiel: <br />

Zulässige Werte für value sind ganze Zahlen (Integer) sowie -1 für einen<br />

Fehlerstatus.<br />

Nicht zulässig sind folgende Status-Nummern, da diese systemintern reserviert<br />

sind:<br />

• -999 (Status-ID für Stop-Baustein)<br />

• -2 (systemintern reserviert)<br />

• 999 (Status-ID für noch nicht ausgeführte Prozess-Bausteine)<br />

4. Beachten Sie zudem, dass das XSL-Mapping ein Wurzel-Element generieren muss, damit<br />

das XSL-Mapping ausgeführt und ein gültiges XML-Dokument erzeugt werden kann.<br />

Das XSL-Mapping gibt nun Processing Instructions nach dem Muster aus, z.B. aus.<br />

5. Im nachfolgenden Condition-Baustein für jede Verzweigung einen erzeugten Status<br />

auswerten (siehe Abschnitt 4.3.10, „Bedingungen und Verzweigungen mit Condition<br />

erstellen “).<br />

• Auf einen Übergang hinter dem Condition-Baustein doppelklicken, um den Condition<br />

Editor zu öffnen.<br />

• Auf Insert logical operation ... klicken, um eine Bedingung zu definieren.<br />

• In If result of das XSL-Mapping wählen.<br />

• In is einen Vergleichsoperator wählen und rechts den zu prüfenden Wert eingeben.<br />

Das XSL-Mapping lässt sich nicht ausführen Möglicherweise hat dies folgende<br />

Ursachen:<br />

• Der verarbeitete Wert ist -999, -2, 999 oder eine Zeichenkette (String).<br />

• Das vom XSL-Mapping erzeugte XML-Dokument enthält kein Wurzel-<br />

Element; Fügen Sie z.B. hinter die ConditionState-Definitionen ein.<br />

4.5 Prozesse debuggen und ausführen<br />

In diesem Abschnitt erfahren Sie, wie Sie erstellte Prozesse auf Fehler überprüfen<br />

(debuggen) und auf dem <strong>X4</strong> Server ausführen können. Hierfür gibt es zwei Modi:<br />

• Im Run-Modus wird der Prozess direkt ausgeführt; in der Run/Debug Console-Sicht<br />

werden Log-Mitteilungen des <strong>X4</strong> Servers angezeigt.<br />

• Im Debug-Modus werden zu jedem ausgeführten Prozess-Schritt detaillierte<br />

Statusinformationen in der Run/Debug Console-Sicht ausgegeben.<br />

4.5.1 Prozess debuggen (Debug-Modus)


4. Prozesse modellieren<br />

64<br />

Während der Prozess-Entwicklung können Sie direkt im Prozess-Designer Ihre Prozesse<br />

auf syntaktische Fehler der einzelnen Prozess-Bausteine überprüfen.<br />

1. Falls gewünscht, Debug-Haltepunkte (Breakpoints) setzen, um bei kritischen Prozess-<br />

Schritten das Debugging automatisch anzuhalten.<br />

2.<br />

• Im Prozess-Designer den gewünschten Prozess-Baustein anklicken.<br />

•<br />

In der Symbolleiste<br />

(Toggle Breakpoint) klicken.<br />

(Start Debug) klicken, um den Prozess im Debug-Modus zu starten.<br />

Wenn ein Parameter (meist der Operation-Parameter) nicht gesetzt wird, kommt sofort<br />

eine Fehlermeldung. Der betroffene Prozess-Baustein erhält ein Warndreieck.<br />

3.<br />

(Step Into) klicken, um den nächsten Einzelschritt auszuführen und anzuzeigen (auch<br />

in Subprozessen).<br />

Zu jedem ausgeführten Prozess-Schritt wird ein Eintrag in der Debug-Sicht angezeigt.<br />

Fehlermeldungen werden rot hervorgehoben, erfolgreiche Statusmeldungen sind grün.<br />

Außerdem wird jeweils eine temporäre Ausgabe-Datei angelegt, die Sie über den<br />

entsprechenden Verweis ansehen können (beispielsweise file://1244017505671).<br />

4.<br />

Wenn ein Fehler auftritt, wird der Debug-Modus abgebrochen.<br />

Mit<br />

(Terminate) können Sie den Debug-Modus bei Bedarf manuell beenden.<br />

4.5.2 Prozess ausführen (Run-Modus)<br />

Sie können Prozesse direkt aus dem <strong>X4</strong> Front-End heraus aufrufen. Dabei wird der Prozess<br />

auf dem <strong>X4</strong> Server ausgeführt und es werden keine Debug-Informationen erzeugt.<br />

Um Prozesse auszuführen, gibt es mehrere Möglichkeiten:<br />

•<br />

Geöffnete Prozesse starten: In der Symbolleiste auf<br />

(Run <strong>X4</strong> Process) klicken.<br />

• Im Repository Navigator: Den Prozess rechtsklicken, im Kontextmenü Run <strong>X4</strong> Process<br />

wählen.<br />

• Als Subprozess: Dieser wird automatisch vom übergeordneten Prozess aufgerufen<br />

• Zeitgesteuert ausführen: Mithilfe des Schedule-Eigenschaft des Prozesses zu<br />

festgelegten Zeiten starten (siehe Abschnitt 4.5.3, „Prozess mit Scheduler zeitgesteuert<br />

ausführen “)


4. Prozesse modellieren<br />

65<br />

4.5.3 Prozess mit Scheduler zeitgesteuert ausführen<br />

Für jeden Prozess können Sie über den Scheduler festlegen, ob er zeitgesteuert aufgerufen<br />

werden soll. Dies ist bei Routine-Aufgaben wie dem täglichen Datenabgleich mit einem<br />

Datenlieferanten zu einer bestimmten Uhrzeit sinnvoll.<br />

Sie können die automatische Ausführung auf ein bestimmtes Zeitfenster begrenzen, den<br />

Prozess in frei definierbaren Zeitabständen unendlich oft wiederholen lassen oder eine<br />

maximale Anzahl von Durchläufen definieren.<br />

Die Zeitpläne werden zentral auf dem <strong>X4</strong> Server in /<strong>X4</strong>DB/0/<br />

schedule.xml gespeichert. Ein geöffnetes <strong>X4</strong> Front-End ist also nicht erforderlich, um<br />

Prozesse zeitgesteuert auszuführen.<br />

1. Gewünschten Prozess im Prozess-Designer öffnen und auf einen leeren Bereich auf der<br />

Zeichnungsfläche klicken.<br />

2. In Properties auf Schedule not set klicken.<br />

Wenn bereits ein Zeitplan für diesen Prozess festgelegt wurde, wird stattdessen Schedule<br />

set angezeigt.<br />

Das Fenster Process Run Schedule wird geöffnet.<br />

3. Startzeitpunkt festlegen:<br />

• Start process aktivieren.<br />

• Rechts daneben das Datum und die Uhrzeit festlegen.<br />

4. Wenn der Prozess periodisch ausgeführt werden soll, Ausführintervall festlegen:<br />

• Start next on every aktivieren.<br />

• Rechts daneben einen Zahl eingeben.<br />

• Im Auswahlmenü die gewünschte Zeiteinheit auswählen (Sekunden, Minuten,<br />

Stunden, Tage, Wochen, Monate oder Jahre).<br />

Der Prozess wird nun im angegebenen Zeitabstand endlos wiederholt ausgeführt.<br />

5. Wenn Sie eine maximale Anzahl von Durchläufen definieren möchten, die Zahl der<br />

Durchläufe festlegen:<br />

• End after wählen.<br />

• Rechts daneben die maximale Anzahl von Durchläufen eingeben.


4. Prozesse modellieren<br />

66<br />

6. Wenn Sie einen Endzeitpunkt für das zeitgesteuerte Ausführen definieren möchten:<br />

• End by wählen.<br />

• Rechts daneben das Datum und die Uhrzeit festlegen.<br />

7. OK klicken, um den Zeitplan zu speichern.<br />

Der Zeitplan ist nun im Prozess hinterlegt und wird auf dem Server gespeichert. Zur<br />

festgelegten Zeit wird der Prozess nun automatisch ausgeführt.<br />

Der Parameter In Service des Prozesses muss aktiviert sein, damit der Prozess<br />

zeitgesteuert gestartet werden kann!


5. Neu in <strong>X4</strong> Version 4.0<br />

67<br />

5 Neu in <strong>X4</strong> Version 4.0<br />

In diesem Abschnitt wird beschrieben, welche neuen Funktionen und Eigenschaften der <strong>X4</strong><br />

Enterprise Service Bus in Version 4.0 besitzt und wie Sie diese nutzen können.<br />

5.1 <strong>X4</strong> Server<br />

In diesem Abschnitt lernen Sie die wichtigsten Neuerungen und Änderungen des <strong>X4</strong><br />

Servers kennen.<br />

5.1.1 Neue Funktionen<br />

• EDIFACT-Adapter: Mit dem neuen EDIFACT-Adapter können zusätzliche<br />

Nachrichtentypen DIN ISO 9735-konform erstellt und verarbeitet werden. Er<br />

ermöglicht eine generische Konvertierung zwischen dem EDIFACT-Datenformat und<br />

XML.<br />

• BIPRO-Adapter: Der neue BiPRO-Adapter ermöglicht die automatisierte Anbindung<br />

von Versicherungsunternehmen und Maklern. Via WebServices können so Angebote,<br />

Anträge und Tarifierung sicher abgewickelt werden. Der BiPRO-Adapter besteht aus <strong>X4</strong><br />

Prozess-Vorlagen, die leicht an unternehmensspezifische Workflows angepasst werden<br />

können.<br />

• Datenbank-Adapter wurde wie folgt verbessert:<br />

• Performance-Verbesserungen um bis zu Faktor 10 durch die Funktionen Batch<br />

Insert, Batch Update und Batch Delete.<br />

• Der Umgang mit Datumsformaten wurde verbessert.<br />

• ImageToImage-Adapter zum Konvertieren von Bilddateien wurde hinzugefügt.<br />

• Word2PDF-Adapter wurde wie folgt verbessert:<br />

• Adapter kann nun ohne Zugriff auf das Dateisystem komplett im Arbeitsspeicher<br />

ausgeführt werden.<br />

• Der Word2PDF-Adapter kann nun mehrere Input-Dokumente verarbeiten.<br />

• PDFToTiff-Adapter (PDF Tiff Image) wurde hinzugefügt und besitzt nun folgende<br />

Funktionen:<br />

• Umwandlung von PDF-Dateien in TIFF-Bilddateien.<br />

• TIFF-Dateien mit mehreren Seiten können erzeugt werden.<br />

• TiffToPDF-Adapter wurde hinzugefügt.<br />

• TCPStarter wurde hinzugefügt, der an einem Port horcht und Prozesse mit den<br />

übergebenen Daten startet.<br />

• E-Mail-Transferadapter erhält folgende neue Funktionen:<br />

• Base64-Kodierung beim Empfang von E-Mails ist nun über einen Parameter immer<br />

möglich.<br />

• Priorität von E-Mails kann gesetzt werden.<br />

• Direkter Versand von EML-Nachrichten ist nun möglich.<br />

• IMAP-Adapter wurde folgendermaßen verbessert:


5. Neu in <strong>X4</strong> Version 4.0<br />

68<br />

• Neuer Parameter zur Base64-Kodierung beim Empfang von E-Mails wurde<br />

hinzugefügt.<br />

• Ineinander verschachtelte E-Mails können nun verarbeitet werden.<br />

• FTP- und SFTP-Adapter: eine Operation Rename wurde hinzugefügt.<br />

• Weitere Adapter wurden hinzugefügt:<br />

• BAM-Adapter (Verbindung zu <strong>X4</strong> Business Activity Monitoring) wurde hinzugefügt.<br />

• XMLSignatureValidator-Adapter wurde zu den bereits bestehenden<br />

Sicherheitsfunktionen hinzugefügt.<br />

• TIFFProperties-Adapter zum Lesen von TIFF-Eigenschaften wurde hinzugefügt.<br />

• <strong>X4</strong> SAP-Adapter erhält nun folgende Funktionen:<br />

• Konfiguration der Verschlüsselung für den SAP-Adapter ist nun über <strong>X4</strong>config<br />

möglich.<br />

• Ein Fehlerstatus wird erzeugt, wenn kein BAPI aufgerufen werden kann.<br />

• Die Parameter ConnectionPoolTimeout und ConnectionPoolTimeoutCheck sind<br />

nun verfügbar.<br />

• Der Adapter gibt nun -1 aus, wenn IDoc nicht korrekt gesetzt ist.<br />

• Transaction Handling für JCoServer wird nun unterstützt.<br />

• Syntax-Prüfung ist für IDocs nun abschaltbar.<br />

• Ungültige Zeichen in XML werden nun korrekt behandelt.<br />

• Zentrale Verschlüsselungs-Konfiguration über die <strong>X4</strong>config ist nun möglich.<br />

• JMS Transfer-Adapter wurde wie folgt erweitert:<br />

• Eine List-Methode wurde hinzugefügt.<br />

• Beim Empfangen liefert der Parameter toXML nun immer Base64-kodierte Daten.<br />

• XPath-Adapter lässt sich nun zurücksetzen.<br />

• COBOL Copy Book Reader-Adapter verwendet nun reguläre Ausdrücke.<br />

• Message Queue-Adapter (Websphere MQ) wurde wie folgt verbessert:<br />

• Wenn die Operation Receive gewählt wird, die Parameter toXML auf true und<br />

MessageFormat auf NONE gesetzt werden, dann wird die Nachricht immer Base64-<br />

kodiert.<br />

• Alias-Konfiguration der Verschlüsselung ist nun über <strong>X4</strong>config möglich.<br />

• Timehelper: Neue XSLT-Hilfsklasse zur Zeitberechnung wurde hinzugefügt.<br />

• Transaktionen: Das Timeout-Verhalten lässt sich nun kontrollieren.<br />

• HTTPStarter: Daten können einfacher im Body an den Prozess übergeben werden.<br />

• Neue Platzhalter wurden hinzugefügt:<br />

• %CURRENT_PROJECT%: Aktuelles Projekt<br />

• %ACTION_ID%: ID des aktuellen Prozess-Bausteins<br />

• Kompatibilität mit alternativen VMs: HTTPS-Verbindungen werden von verschiedenen<br />

Java Virtual Machines, die nicht von Sun stammen, unterstützt, wenn kein Keystore<br />

übergeben wird.


5. Neu in <strong>X4</strong> Version 4.0<br />

69<br />

• Folgende weitere Starter wurden hinzugefügt:<br />

• HTTPForm: <strong>X4</strong>-Prozesse aus HTTPForms starten<br />

• WSStarter: <strong>X4</strong>-Prozesse als WebService starten<br />

• Weitere Neuerungen im <strong>X4</strong> Server:<br />

5.1.2 Behobene Fehler<br />

• Debugging-Ausgaben wurden verbessert.<br />

• Thread-Namen wurden zur besseren Übersicht beim Debugging vereinheitlicht.<br />

• Sämtliche Adapter sind nun mittels externer URL konfigurierbar und<br />

verschlüsselbar.<br />

Im Folgenden werden die wichtigsten bekannten Fehler dargestellt, die mit <strong>X4</strong> in der<br />

Version 4.0 behoben wurden. Fehler können Sie unter http://bugzilla.softproject.de melden.<br />

• Im PDFSplitter-Adapter wurden verschiedene Fehler beseitigt.<br />

• File System-Transferadapter gibt 0 zurück, wenn eine Datei nicht gelöscht werden<br />

konnte.<br />

• Im Excel-Adapter wurde der Umgang mit Formeln verbessert.<br />

5.1.3 Bekannte Probleme<br />

Im Folgenden werden Probleme genannt, die den Entwicklern bereits bekannt sind, jedoch<br />

zum jetzigen Zeitpunkt noch nicht behoben werden konnten.<br />

• XSL-Editor: Wird von der Ansicht Source in Design gewechselt, dann können<br />

Bearbeitungschritte, die in der Source-Ansicht durchgeführt wurden, nicht mehr<br />

rückgängig gemacht werden.<br />

5.1.4 Änderungen<br />

Im Folgenden werden die wichtigsten Unterschiede zwischen <strong>X4</strong> Version 3.9 und <strong>X4</strong><br />

Version 4.0 dargestellt.<br />

• <strong>X4</strong> SAP-Adapter: Struktur von gesendeten IDocs entspricht nun der Struktur von<br />

empfangenen IDocs.<br />

• FOP 0.95: XSL-FO-Prozessor wurde auf Version 0.95 aktualisiert. Eventuell ist es<br />

erforderlich, Ihre Reports anzupassen.<br />

• Verhaltensänderung von Prozessen über RMI: Prozesse, die über RMI aufgerufen<br />

werden (z. B. Prozess-Starter-Adapter) verhalten sich nun korrekt, wenn der<br />

Rückgabewert nicht UTF8-kodiert ist. Entfernen Sie daher die Workarounds aus Ihren<br />

bestehenden Prozessen.<br />

• WebServices mit Axis: AxisURL aus der <strong>X4</strong>config wird nun verwendet.<br />

• Benutzer-ID (in <strong>X4</strong>DB) ist nun eine Zeichenkette, keine Zahl mehr.<br />

5.2 <strong>X4</strong> Front-End<br />

In diesem Abschnitt lernen Sie das <strong>X4</strong> Front-End und dessen neue Funktionen kennen.


5. Neu in <strong>X4</strong> Version 4.0<br />

70<br />

5.2.1 <strong>X4</strong> Front-End auf Eclipse-Basis<br />

Das <strong>X4</strong> Front-End basiert ab Version 4.0 komplett auf der flexiblen und leistungsfähigen<br />

Entwicklungsumgebung (IDE) Eclipse. Das neue <strong>X4</strong> Front-End greift auf zahlreiche<br />

bekannte und bewährte Eclipse-Funktionen zurück, etwa zur XML-Darstellung.<br />

Das <strong>X4</strong> Front-End steht in folgenden Varianten zur Verfügung (benötigen Java Runtime<br />

Environment 1.6):<br />

• Eclipse-Plugin: Direkt in Ihrer gewohnten Eclipse-Umgebung <strong>X4</strong>-Prozesse modellieren,<br />

Mappings erstellen usw.<br />

• Standalone-Version: Das <strong>X4</strong> Front-End als eigenständige Anwendung<br />

Abbildung 5.1: <strong>X4</strong> Front-End als Eclipse-Plugin<br />

5.2.2 Refactoring: Elemente im Repository dynamisch bearbeiten<br />

Mit den im Folgenden vorgestellten neuen Refactoring-Funktionen können Sie beim<br />

Umbenennen und Verschieben von Dateien im <strong>X4</strong> Repository viel Zeit sparen und Fehler<br />

vermeiden.<br />

5.2.2.1 Elemente umbenennen und Referenzen automatisch aktualisieren<br />

Wenn Sie Dateien im Repository umbenennen möchten, können Sie nun die Referenzen in<br />

den Prozessen automatisch aktualisieren lassen.<br />

1. Auf das gewünschte Element im Repository Navigator rechtsklicken, um das<br />

Kontextmenü zu öffnen.<br />

2. Refactor/Rename wählen, um das Fenster Rename repository file aufzurufen.


5. Neu in <strong>X4</strong> Version 4.0<br />

71<br />

3. In Rename repository resource einen neuen Dateinamen eingeben.<br />

4. Wenn sämtliche Referenzen auf die Datei geändert werden sollen:<br />

• Update references wählen.<br />

• Next klicken, um anzuzeigen, in welchen Referenzen auf die umbenannte Datei<br />

angepasst werden.<br />

5. Finish klicken, um die gewünschten Änderungen durchzuführen.


5. Neu in <strong>X4</strong> Version 4.0<br />

72<br />

5.2.2.2 Elemente verschieben und automatisch Referenzen aktualisieren<br />

Sie können nun Elemente beliebig innerhalb von Projekten des <strong>X4</strong> Repositorys verschieben.<br />

Dabei können die Referenzen auf die verschobene Datei in anderen Prozessen auf Wunsch<br />

automatisch angepasst werden.<br />

1. Datei per Drag&Drop an die gewünschte Stelle im Repository verschieben.<br />

Das Fenster Update references wird geöffnet.<br />

2. Wenn sämtliche Referenzen auf die verschobene Datei geändert werden sollen:<br />

• Yes klicken.<br />

Das Fenster Move File Confirm wird geöffnet. Hier wird angezeigt, von welchen<br />

Elementen im Repository die verschobene Datei verwendet wird.<br />

• OK klicken, um die gewünschten Änderungen durchzuführen.<br />

3. Wenn die Referenzen nicht aktualisiert werden sollen: No klicken.<br />

5.2.2.3 Call Hierarchy: Verwendungsnachweis für Prozess-Bausteine<br />

Zu jedem Prozess und Prozess-Baustein im <strong>X4</strong> Repository können Sie mit der Call<br />

Hierarchy-Funktion anzeigen, von welchen Prozessen diese verwendet werden. So<br />

können Sie auf einen Blick sehen, welche Abhängigkeiten bestehen.<br />

1. Im Repository Navigator das gewünschte Element rechtsklicken, um das Kontextmenü<br />

aufzurufen.<br />

2. Im Kontextmenü View Call Hierarchy wählen.<br />

Als Verwendungsnachweis wird in der Call Hierarchy Viewer-Sicht eine hierarchische<br />

Auflistung der betroffenen Prozesse angezeigt.


5. Neu in <strong>X4</strong> Version 4.0<br />

73<br />

5.2.2.4 Pack as Nested Process: Subprozess anlegen<br />

Bei umfangreicheren Prozessen ist es sinnvoll, einzelne Segmente in Subprozesse<br />

auszulagern und den Prozess damit zu modularisieren. Mithilfe der Funktion Pack as<br />

Nested Process erfolgt dies über das Kontextmenü im Prozess-Designer. Die so erstellten<br />

Subprozesse lassen sich mehrfach verwenden und nahezu beliebig tief ineinander<br />

verschachteln.<br />

1. Im Prozess-Designer mehrere Prozess-Bausteine (mindestens 2) markieren, die ausgelagert<br />

werden sollen.<br />

2. Auf der Zeichnungsfläche rechtsklicken, um das Kontextmenü aufzurufen.<br />

3. Pack as nested process wählen.<br />

Das Fenster Process File Naming wird geöffnet.<br />

4. Den Zielordner wählen und in File Name den Dateinamen des Subprozesses eingeben.


5. Neu in <strong>X4</strong> Version 4.0<br />

74<br />

5. Finish klicken.<br />

Der Subprozess wird mit den gewählten Bausteinen angelegt. Im Hauptprozess werden die<br />

gewählten Bausteine durch den neu angelegten Subprozess ersetzt.<br />

5.2.3 Prozess-Dokumentation automatisch erzeugen<br />

Mit den im Folgenden vorgestellten Prozess-Dokumentations-Funktionen können Sie<br />

für jeden Prozess im Repository während des Entwicklungsprozesses automatisch eine<br />

Dokumentation im HTML-Format erzeugen.<br />

5.2.3.1 Prozess-Dokumentation in <strong>X4</strong><br />

Diese Prozess-Dokumentation enthält zu jedem Prozess-Baustein (nun auch zu XSL-<br />

Mappings) sämtliche Parameter und stellt das Prozess-Diagramm in Form einer SVG-Datei<br />

dar.<br />

Möglichkeiten um Prozess-Dokumentation zu erzeugen:<br />

• Export: Prozess-Dokumentation zu Projekten oder einzelnen Ordnern im <strong>X4</strong> Repository<br />

mit dem Generate Process Documentation Wizard ins Dateisystem exportieren<br />

(siehe Abschnitt 5.2.3.2, „Prozess-Dokumentation ins Dateisystem exportieren “)<br />

• Vorschau: Dokumentation zu einem Subprozess direkt aus dem Prozess-Designer<br />

temporär im <strong>X4</strong> Front-End anzeigen (siehe Abschnitt 5.2.3.3, „Prozess-Dokumentation<br />

temporär erzeugen “)<br />

• Mit <strong>X4</strong> BAM: Aus der <strong>X4</strong> BAM-Oberfläche heraus die Prozess-Dokumentation zu jedem<br />

Prozess anzeigen


5. Neu in <strong>X4</strong> Version 4.0<br />

75<br />

Abbildung 5.2: Prozess-Dokumentation im HTML-Format mit SVG-Diagramm<br />

5.2.3.2 Prozess-Dokumentation ins Dateisystem exportieren<br />

1. Menü <strong>X4</strong> Wizards > Generate Process Documentation Wizard aufrufen.


5. Neu in <strong>X4</strong> Version 4.0<br />

76<br />

2. In Process Source Folder auf Browse klicken, um den gewünschten Ordner im Repository<br />

auszuwählen.<br />

3. In Documentation Destination Folder auf Browse klicken, um den Zielordner im<br />

Dateisystem auszuwählen.<br />

4. Finish klicken, um die Prozess-Dokumentation im Zielordner zu erzeugen.<br />

5.2.3.3 Prozess-Dokumentation temporär erzeugen<br />

Sie können Prozess-Dokumentation zu einem Subprozess direkt aus dem Prozess-Designer<br />

temporär im <strong>X4</strong> Front-End anzeigen.<br />

1. Im Prozess-Designer auf gewünschten Subprozess rechtsklicken und View Process<br />

Documentation aufrufen.<br />

Die temporär erzeugte Prozess-Dokumenation wird im Editor-Bereich in der View Process<br />

Documentation-Sicht angezeigt.<br />

Prozess-Diagramm-Grafik wird nicht angezeigt<br />

Um das Prozess-Diagramm in der Sicht View Process Documentation-Sicht<br />

darzustellen, wird ein SVG-Viewer benötigt, wenn in Eclipse der Internet Explorer<br />

als Standard-Browser verwendet wird.<br />

Den kostenfreien SVG-Viewer können Sie von http://www.ieaddons.com/de/<br />

Details.aspxId=444 herunterladen und installieren.<br />

5.2.4 Vorlagen für Prozesse und Prozess-Bausteine verwenden<br />

Die Vorlagen-Funktion ermöglicht es Ihnen, ausgearbeitete Prozesse als Vorlagen<br />

wiederzuverwenden und damit die Prozess-Entwicklung erheblich zu beschleunigen. Die<br />

so erstellten Prozesse müssen nur noch an die Gegebenheiten angepasst werden. Die


5. Neu in <strong>X4</strong> Version 4.0<br />

77<br />

Vorlagen-Funktion beschränkt sich jedoch nicht auf Prozesse – Sie können für sämtliche<br />

Prozess-Bausteine im <strong>X4</strong> Repository eigene Vorlagen anlegen und verwenden. Die<br />

Vorlagen-Funktion beschränkt sich jedoch nicht auf Prozesse; Sie können für sämtliche<br />

Prozess-Bausteine im <strong>X4</strong> Repository eigene Vorlagen anlegen und verwenden.<br />

Die Vorlagen-Dateien werden auf dem <strong>X4</strong> Server im Ordner /<strong>X4</strong>DB/0 in der Datei Templates.xml verwaltet.<br />

Die Vorlagen-Dateien selbst befinden sich im Unterordner /Templates.<br />

1. Im Repository Navigator rechtsklicken, um das Kontexmenü aufzurufen.<br />

2. In From Template den gewünschten Elementtyp wählen, um den File Creation Wizard<br />

aufzurufen.<br />

Für ausgegraute Elemente sind keine Vorlagen definiert.<br />

Beispiel: Process wählen, um einen Prozess auf Basis einer Prozess-Vorlage zu erstellen.<br />

3. Einen Eintrag aus der Liste der verfügbaren Vorlagen wählen und Next klicken.<br />

4. Den Zielordner wählen und in File Name den Dateinamen des Subprozesses eingeben.<br />

5. Finish klicken.<br />

Das Element wird gemäß der Vorlage mit allen dazugehörigen Dateien und ggf. auch<br />

Ordnern im Repository angelegt.<br />

5.2.5 Weitere Verbessungen im <strong>X4</strong> Front-End


5. Neu in <strong>X4</strong> Version 4.0<br />

78<br />

Die Entwickler von <strong>X4</strong> haben zahlreiche weitere Verbesserungen implementiert, unter<br />

anderem:<br />

• Update-Site: Front-End-Aktualisierungen direkt aus dem <strong>X4</strong> Front-End heraus<br />

installieren<br />

• Entwurfs-Modus: auch ohne Verbindung zum <strong>X4</strong> Repository Prozesse modellieren und<br />

XSL-Mappings entwerfen<br />

• Debugging: vereinheitlichte Thread-Namen und verbesserte Debug-Ausgaben<br />

erleichtern es, Fehler zu identifizieren<br />

• Hilfe: Deutschsprachige Dokumentation und Online-Hilfe (über die F1-Taste aufrufbar)<br />

zum <strong>X4</strong> Front-End


A. Tastenkombinationen<br />

Das <strong>X4</strong> Front-End bietet eine Reihe von Möglichkeiten, mit Tastenkombinationen und per<br />

Drag&Drop Prozesse, Prozess-Bausteine und XSL-Mappings schneller zu bearbeiten.<br />

Prozess-Designer<br />

Sie können die im Folgenden genannten Standard-Tastenkombinationen individuell<br />

bearbeiten. Wählen Sie dazu im Menü Window > Preferences > Keys.<br />

Prozess ausführen und debuggen<br />

Run: Prozess ausführen:<br />

Debug: Prozess auf Fehler prüfen:<br />

Step Into: Beim Debuggen Einzelschritt<br />

ausführen und anzeigen (auch in<br />

Subprozessen):<br />

Step Over: Beim Debuggen Prozess-Schritt<br />

ausführen (ohne Schritte des Subprozess<br />

anzuzeigen):<br />

Step Return: Beim Debuggen aus<br />

Subprozess herausspringen<br />

Suspend: Debugging-Vorgang anhalten<br />

Resume: Debugging fortsetzen<br />

Terminate: Debugging abbrechen<br />

F9-Taste drücken.<br />

F11-Taste drücken.<br />

F5-Taste drücken.<br />

F6-Taste drücken.<br />

F7-Taste drücken.<br />

Strg+F8 drücken.<br />

F8-Taste drücken.<br />

Strg+F2 drücken.<br />

Prozess-Bausteine und Übergänge einfügen<br />

Prozess-Baustein zwischen zwei<br />

verbundenen Bausteinen aus dem<br />

Repository einfügen:<br />

Prozess-Baustein entfernen und Übergang<br />

behalten:<br />

Prozess-Baustein durch eine Datei aus dem<br />

Repository ersetzen:<br />

Prozess-Baustein hinter einem<br />

unverbundenen Baustein einfügen und<br />

dabei automatisch einen Übergang<br />

herstellen:<br />

Datei per Drag&Drop aus dem Repository<br />

auf den Übergang ziehen; Wenn die Linie<br />

des Übergangs dick wird, loslassen.<br />

Alt-Taste drücken und Prozess-Baustein auf<br />

der Zeichnungsfläche verschieben.<br />

Datei per Drag&Drop aus dem Repository<br />

auf den zu ersetzenden Prozess-Baustein<br />

ziehen.<br />

Unverbundenen Prozess-Baustein<br />

markieren, Shift-Taste drücken und die<br />

Datei aus dem Repository hinter den<br />

markierten Prozess-Baustein ziehen.<br />

Elemente bearbeiten<br />

Alles auf der Zeichnungsfläche auswählen:<br />

Strg+A drücken.


A. Tastenkombinationen<br />

Elemente bearbeiten<br />

Prozess-Baustein ausschneiden:<br />

Prozess-Baustein kopieren:<br />

Prozess-Baustein einfügen:<br />

Prozess-Baustein entfernen:<br />

Bearbeitungsschritt rückgängig machen:<br />

Bearbeitungsschritt wiederherstellen:<br />

Prozess-Baustein bearbeiten:<br />

Editor schließen:<br />

Bearbeitetes Element speichern:<br />

Datei im Repository umbenennen:<br />

Datei im Repository verschieben:<br />

Neu laden:<br />

Ansicht bearbeiten<br />

Prozessdiagramm vergrößern (zoomen):<br />

Prozessdiagramm verkleinern:<br />

Strg+X drücken.<br />

Strg+C drücken.<br />

Strg+V drücken.<br />

Entf-Taste drücken.<br />

Strg+Z drücken.<br />

Strg+Y drücken.<br />

Auf Symbol doppelklicken.<br />

Strg+W drücken.<br />

Strg+S drücken.<br />

F2-Taste drücken.<br />

Datei per Drag&Drop in den Ordner ziehen.<br />

F5-Taste drücken.<br />

Strg+- drücken.<br />

Strg++ drücken.<br />

XSL-Editor<br />

Basis-Funktionen<br />

XSL-Transformation ausführen:<br />

Kind-Element einfügen:<br />

Geschwister-Element einfügen:<br />

Attribut einfügen:<br />

Text einfügen:<br />

Umschließendes Eltern-Element einfügen:<br />

Element umbenennen:<br />

Markierten Knoten entfernen:<br />

Code formatieren/einrücken:<br />

Knoten kopieren<br />

Markierten Knoten als vorangehenden<br />

Knoten einfügen:<br />

Markierten Knoten als nachfolgenden<br />

Knoten einfügen:<br />

F9-Taste drücken.<br />

Einfg -Taste drücken.<br />

Shift+Einfg drücken.<br />

Alt+Einfg drücken.<br />

Strg+Einfg drücken.<br />

Strg+Shift+Einfg drücken.<br />

Alt+Shift+R drücken.<br />

Entf-Taste drücken.<br />

Strg+Shift+F drücken.<br />

Strg+Alt+Nach oben drücken.<br />

Strg+Alt+Nach unten drücken.


A. Tastenkombinationen<br />

81<br />

Knoten kopieren<br />

Markierten Knoten als vorangehenden<br />

Eltern-Knoten einfügen:<br />

Knoten verschieben<br />

Markierten Knoten als vorangehenden<br />

Knoten verschieben:<br />

Markierten Knoten als nächsten Knoten<br />

verschieben:<br />

Markierten Knoten als vorangehenden<br />

Eltern-Knoten verschieben:<br />

Im Stylesheet-Baum navigieren<br />

Zum Eltern-Element wechseln:<br />

Zum nächsten Geschwister-Knoten<br />

wechseln:<br />

Zum vorangehenden Element wechseln:<br />

Verbundene Knoten in Quelldokument-<br />

Bereich und Stylesheet-Bereich markieren:<br />

Letzte Markierung wiederherstellen:<br />

XSL-T-Elemente einfügen<br />

xsl:value-of einfügen:<br />

xsl:if einfügen:<br />

xsl:when einfügen:<br />

xsl:otherwise einfügen:<br />

xsl:copy-of einfügen:<br />

xsl:element einfügen:<br />

xsl:choose einfügen:<br />

xsl:for-each einfügen:<br />

xsl:attribute einfügen:<br />

Strg+Alt+Nach links drücken.<br />

Alt+Nach oben drücken.<br />

Alt+Nach unten drücken.<br />

Alt+Shift+Nach links drücken.<br />

Strg+Shift+Nach links drücken.<br />

Strg+Shift+Nach unten drücken.<br />

Strg+Shift+Nach oben drücken.<br />

Shift+Einfg drücken.<br />

Alt+Shift+Nach unten drücken.<br />

Alt+Shift+S , dann V drücken.<br />

Alt+Shift+S , dann I drücken<br />

Alt+Shift+S , dann W drücken<br />

Alt+Shift+S , dann O drücken<br />

Alt+Shift+S , dann P drücken<br />

Alt+Shift+S , dann E drücken<br />

Alt+Shift+S , dann C drücken<br />

Alt+Shift+S , dann F drücken<br />

Alt+Shift+S , dann A drücken


Index<br />

A<br />

Adapter, 4<br />

Adapter-Editor, 24, 25<br />

konfigurieren, 10<br />

Anmelden am <strong>X4</strong> Server, 5<br />

Application Server, 1<br />

Arbeitsfläche (Siehe Zeichnungsfläche)<br />

Ausklappbereich<br />

Control, 22<br />

Ausklappbereich ("Flyout")<br />

Data, 22<br />

Drawing, 23<br />

Modules, 22<br />

Ausklappbereich (Flyout), 22<br />

B<br />

BAM (Siehe <strong>X4</strong> BAM)<br />

Bedingung (Condition) einfügen, 54<br />

Bedingungen setzen (Condition Editor), 28<br />

BPM<br />

BPM-Designer, 37<br />

BPM-Prozess in <strong>X4</strong>, 3<br />

Business Process Management, 1<br />

Notation (BPMN), 37<br />

Symbole, 38<br />

Branch (Siehe Verzweigung)<br />

Breakpoint (Siehe Debug-Haltepunkt)<br />

Business Activity Monitoring (Siehe <strong>X4</strong> BAM)<br />

C<br />

Call Hierarchy (Verwendungsnachweis), 72<br />

Condition (Bedingung) einfügen, 54<br />

Condition Editor, 28<br />

Branch-Bereich, 29<br />

Condition-Bereich, 29<br />

Edit Condition-Bereich, 30<br />

ConditionState, 62<br />

Connection (Datenbank) herstellen, 56<br />

Custom Parameters, 59<br />

D<br />

DataSource-Verbindung herstellen, 56<br />

Daten mit Merge zusammenfügen, 53<br />

Datenbank-Anweisung anlegen, 56<br />

Datenbank-Mapping: Vorlage erstellen, 56<br />

Datenbank-Verbindung herstellen, 56<br />

Datenbankverbindungs-Editor, 27<br />

Debug-Modus konfigurieren (Front-End), 13<br />

Debugging<br />

Debug-Haltepunkt (Breakpoint) setzen, 63<br />

Funktionen in der Symbolleiste, 23<br />

Run/Debug Console-Sicht, 23<br />

Dynamische Parameter erzeugen, 60<br />

E<br />

EAI, 1<br />

Eclipse-Plugin (<strong>X4</strong> Front-End) aktualisieren, 16<br />

Editor<br />

Adapter-Editor , 24, 25<br />

Datenbankverbindungs-Editor , 27<br />

SQL-Editor , 26<br />

Transfer-Adapter-Editor , 24<br />

Entwurfs-Modus, 2<br />

konfigurieren, 10<br />

F<br />

fachlicher Prozess (BPM-Prozess), 3<br />

Fork-Baustein (Gabelung)<br />

einfügen, 52<br />

Front-End, 1, 5<br />

aktualisieren, 16<br />

Condition Editor, 28<br />

Funktionen in der Symbolleiste, 7<br />

Funktions-Adapter konfigurieren, 10<br />

konfigurieren, 10<br />

Menüs, 7<br />

Neuerungen, 69<br />

Prozess-Designer, 19<br />

Repository Navigator, 9<br />

Server-Verbindung konfigurieren, 11<br />

Text-Editor, 37<br />

Transfer-Adapter konfigurieren, 10<br />

updaten, 16<br />

Werkzeuge, 19<br />

XML-Editor, 35<br />

XSL-Editor, 31<br />

Funktions-Adapter<br />

anlegen und verwenden, 47<br />

G<br />

Gabelung (Fork)


Index<br />

84<br />

einfügen, 52<br />

H<br />

Haltepunkt (Siehe Debug-Haltepunkt)<br />

I<br />

Input-Datei festlegen (gesamtes Front-End), 13<br />

J<br />

J2EE, 1<br />

JBoss Application Server, 1<br />

JDBC-Verbindung herstellen, 56<br />

Join-Baustein (Zusammenführung) einfügen, 52<br />

K<br />

Konfiguration<br />

Adapter Editor, 10<br />

Debug-Modus (Front-End), 13<br />

Prozess-Designer, 12<br />

Run-Modus (gesamtes Front-End), 13<br />

Verbindung zum <strong>X4</strong> Server, 11<br />

XSL-Transformation konfigurieren (Front-End),<br />

14<br />

Kontextmenü<br />

Repository Navigator, 9<br />

XML-Editor (Design-Ansicht), 35<br />

XSL-Editor (Stylesheet-Bereich), 34<br />

L<br />

Label vergeben, 45<br />

Login, 5<br />

LogInfo, 62<br />

M<br />

Mapping Editor (Siehe XSL-Editor)<br />

Menüs im Front-End, 7<br />

Merge-Baustein einfügen, 53<br />

N<br />

Nested Process (Siehe Subprozess)<br />

Neu in <strong>X4</strong> Version 4.0, 67<br />

NoResult, 62<br />

O<br />

Ordnerstruktur (empfohlene), 43<br />

P<br />

Palette , 21<br />

Control-Ausklappbereich, 22<br />

Data-Ausklappbereich, 22<br />

Drawing-Flyout, 23<br />

Modules-Ausklappbereich, 22<br />

Parameter<br />

dynamisch erzeugen, 60<br />

setzen, 58<br />

Parametrierung, 58<br />

Benutzerdefinierte Parameter, 59<br />

Custom Parameters, 59<br />

Plugin (<strong>X4</strong> Front-End) aktualisieren, 16<br />

Process Designer (Siehe Prozess-Designer)<br />

Processing Instruction<br />

ConditionState, 62<br />

DynamicParameter, 60<br />

LogInfo, 62<br />

NoResult, 62<br />

Projekt, 43<br />

anlegen, 43<br />

im Repository verwalten, 42<br />

öffnen, 43<br />

schließen, 43<br />

von Vorlage erstellen, 76<br />

Properties-Sicht, 21<br />

Prozess, 3<br />

anlegen, 43<br />

auf Fehler prüfen, 63<br />

ausführen (Run), 64<br />

Ausführen konfigurieren (Front-End), 13<br />

Debug-Modus konfigurieren (Front-End), 13<br />

debuggen, 63<br />

Eigenschaften bearbeiten, 21<br />

exportieren, 45<br />

im Repository verwalten, 42<br />

importieren, 45<br />

Input-Datei festlegen (gesamtes Front-End), 13<br />

öffnen, 44<br />

von Vorlage erstellen, 76<br />

zeitgesteuert ausführen, 65<br />

Prozess-Baustein, 41<br />

als Subprozess speichern, 73<br />

Arten von Bausteinen, 41<br />

Baustein anlegen, 43<br />

Baustein exportieren, 45


Index<br />

85<br />

Baustein importieren, 45<br />

Baustein öffnen, 44<br />

Bedingung (Condition) einfügen, 54<br />

beschriften (mit Label), 45<br />

Call Hierarchy (Verwendungsnachweis), 72<br />

Condition (Bedingung) einfügen, 54<br />

Datenbank-Verbindung einfügen, 56<br />

Fork (Gabelung einfügen, 52<br />

Funktions-Adapter anlegen, 47<br />

Gabelung (Fork) einfügen, 52<br />

im Repository verwalten, 42<br />

Join (Zusammenführung) einfügen, 52<br />

Label vergeben, 45<br />

Mapping anlegen, 49<br />

Merge einfügen, 53<br />

parametrieren, 58, 59<br />

Start-Baustein einfügen, 45<br />

Stop-Baustein einfügen, 45<br />

Subprozess anlegen, 52<br />

Transfer-Adapter anlegen, 46<br />

Übergang (Transition)einfügen, 45<br />

Variable verwenden, 51<br />

Verwendungsnachweis (Call Hierarchy), 72<br />

Verzweigung (Condition) einfügen, 54<br />

von Vorlage erstellen, 76<br />

XML-Dokument erstellen, 48<br />

XSL-Mapping anlegen, 49<br />

Zusammenführung (Join) einfügen, 52<br />

Prozess-Designer, 19<br />

Ansicht verändern, 8<br />

Debug-Funktionen, 8<br />

konfigurieren, 12<br />

Prozess ausführen, 64<br />

Prozess debuggen, 63<br />

Tastenkombinationen, 79<br />

Zeichnungsfläche, 20<br />

Prozess-Dokumentation, 74<br />

ins Dateisystem exportieren, 74, 75<br />

zu Subprozess erzeugen, 74<br />

zu Subprozess temporär erzeugen, 76<br />

Q<br />

Query (Datenbank-Anweisung) anlegen, 56<br />

R<br />

Refactoring<br />

Elemente umbenennen, 70<br />

Elemente verschieben, 72<br />

Repository Navigator, 9<br />

Elemente verschieben, 72<br />

Kontextmenü, 9<br />

Run (Prozess ausführen), 64<br />

Run-Modus konfigurieren (gesamtes Front-End),<br />

13<br />

S<br />

Scheduler (zeitgesteuerte Prozesse), 65<br />

Schleifen einfügen, 54<br />

Shortcuts (Tastenkombinationen), 79<br />

Sicht<br />

Palette , 21<br />

Properties , 21<br />

Repository Navigator, 9<br />

Run/Debug Console , 23<br />

Übersicht, 6<br />

SQL-Anweisung anlegen, 56<br />

SQL-Editor, 26<br />

Standalone-Version (<strong>X4</strong> Front-End) aktualisieren,<br />

17<br />

Subprozess anlegen, 52, 73<br />

Symbolleiste, 7<br />

T<br />

t-slot, 45<br />

Tastenkombinationen, 79<br />

technischer Prozess, 3<br />

Template<br />

für Projekte, Prozesse und Prozessbausteine<br />

verwenden, 76<br />

Text-Editor, 37<br />

Transfer-Adapter<br />

anlegen und einfügen, 46<br />

Transfer-Adapter-Editor, 24<br />

Transformation konfigurieren (Front-End), 14<br />

Transition (Siehe Übergang)<br />

U<br />

Uebergang (Transition)<br />

beschriften (mit Label), 45<br />

einfügen, 45<br />

Update für <strong>X4</strong> Front-End, 16


Index<br />

86<br />

V<br />

Variable erstellen, 51<br />

Verbindung zum <strong>X4</strong> Server<br />

aufbauen, 5<br />

konfigurieren, 11<br />

Verbindungspfeil (Siehe Übergang (Transition))<br />

Verschachtelter Prozess (Siehe Subprozess)<br />

Verwendungsnachweis für Prozess-Bausteine, 72<br />

Verzeichnisstruktur (Siehe Ordnerstruktur)<br />

Verzweigung (Condition) einfügen, 54<br />

View (Eclipse) (Siehe Sicht)<br />

Virtueller Knoten, 49<br />

Vorlage<br />

für Projekte, Prozesse und Prozessbausteine<br />

verwenden, 76<br />

Vorlage für Datenbank-Mapping erstellen, 56<br />

anlegen und einfügen, 49<br />

dynamische Parameter erzeugen, 60<br />

xsl:easy (Siehe XSL-Editor)<br />

Z<br />

Zeichnungsfläche, 20<br />

Zeitgesteuerten Prozess ausführen, 65<br />

W<br />

Webservice Management aufrufen, 7<br />

Workplace (Siehe Zeichnungsfläche)<br />

X<br />

<strong>X4</strong> BAM, 39<br />

Funktionen, 39<br />

im Browser aufrufen, 39<br />

<strong>X4</strong> Front-End (Siehe Front-End)<br />

<strong>X4</strong> Server, 1<br />

Neuerungen, 67<br />

verbinden mit, 5<br />

XML, 4<br />

XML-Dokument erstellen, 48<br />

XML-Editor, 35<br />

Design-Ansicht, 35<br />

Kontextmenü, 35<br />

Source-Ansicht, 36<br />

XSL-Editor, 31<br />

Knotentypen und Symbole, 33<br />

Kontextmenü, 34<br />

Quelldokumentbereich, 31<br />

Stylesheet erstellen, 49<br />

Stylesheet-Bereich, 33<br />

Tastenkombinationen, 80<br />

Transformation konfigurieren (Front-End), 14<br />

Verknüpfungsbereich, 32<br />

XSL-Mapping erstellen, 49<br />

XSL-Mapping

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!