Mit demGrafikprozess-Editor

 können interaktive Prozesse für das Portal definiert werden. Bei diesem Editor handelt es sich um eine Flash-Komponente, mit der Seiten mit Texten, Bildern und animierten Komponenten erstellt werden können, die dem Benutzer den Geschäftsprozess grafisch verdeutlichen.

Diese grafischen Komponenten können Links zu Softwarefunktionen, anderen Prozessen, Hilfeseiten etc. umfassen und Animationsprozesse starten (z. B. Anzeige / Verbergen eines Prozessteils).

./GES_APR_libraries.jpg

Mit dem Editor kann eine Auswahl aus einer Reihe von Bildern aus einer im Standard enthaltenen Bibliothek getroffen werden. Diese Bibliothek heißt "Standard Sage". Der Editor ist das erste Element einer Drop-down-Liste, das in der Auswahlbox für die Grafikkomponenten angezeigt wird:

  • Der Bildschirmkopie ist die Strukturierung der verfügbaren Bilder zu entnehmen:
  • Bibliotheken (hier Sage Standard und Custom vol 1)
  • Gruppen (Vector Shapes, Logos, Themen, Buttons etc.)

Themen (Basic Shapes, Stars), d. h. Bildersammlungen, die in einem Thumbnail-Browser angezeigt werden Diese Bibliotheken können um weitere Bibliotheken, andere Gruppen und andere Themen erweitert werden, die in dem oben beschriebenen Fenster Bibliotheken

angezeigt werden.

  • Hierfür müssen auf dem Anwendungsserver einige Vorgänge manuell ausgeführt werden:
  • Anlage von Verzeichnissen und Unterverzeichnissen für die Bibliotheken, Gruppen und ThemenAblegen von Bildern in den Themenverzeichnissen
  • Anlage von (in JSON geschriebenen) Konfigurationsdateien, in denen die Baumstruktur der Bibliotheken (_param.txt), Gruppen (sgx_libsinfo.txt) und Themen (list.txt) beschrieben wird.

In der vorliegenden Dokumentation wird die Vorgehensweise beschrieben.

Hinweise:

  • Für diese manuelle Konfigurationsphase sind JSON-Kenntnisse notwendig. Daher empfiehlt es sich, einen Entwickler mit JSON- oder mindestens JAVASCRIPT-Kenntnissen hinzuzuziehen. Falls ein solcher nicht verfügbar ist, sollte ein Editor verwendet werden, in dem der JSON-Code hervorgehoben werden kann, damit dessen Struktur klar wird.
  • Bei den Dateinamen muss die Groß- und Kleinschreibung wie unten definiert streng beachtet werden.

Grafik-Librarys für den Prozessgenerator hinzufügen

Prozesse, Grafiken, Anhang, technischer

JSON-Notation

  • In der JSON-Notation, mit der die Strukturen in Javascript definiert werden können, lautet die Syntax wie folgt:

Strukturen werden in geschweifte Klammern gesetzt. Sie setzen sich aus Attributen und deren Wert zusammen:

{ "prop1" : "valeur 1" , "prop2" : "valeur2", "prop3" : 25 }

  • Hier wird eine Struktur mit den drei Attributen prop1, prop2 und prop3 beschrieben, die die alphanumerischen Werte valeur1, valeur2 sowie einen numerischen Wert (25) annehmen.

Tabellen werden in eckige Klammern gesetzt:

  • [ "indice_0", "indice_1", "indice_2, "indice_3" ] steht für eine Tabelle mit vier Elementen.

Diese beiden Notationen können selbstverständlich miteinander kombiniert werden. Beispiel:

{ [ { "age": 25, "nom" : "Martin" }, { "age": 67, "nom" : "Emile" } ], "nombre" : 2 }

steht für eine Struktur, die eine Tabelle aus zwei Strukturen umfasst, gefolgt von einem anderen Wert ("nombre"). Jede Unterstruktur enthält hier die beiden Felder "age" und "nom".

Wichtiger Hinweis: In JSON darf eine Zeichenkette niemals durch einen Zeilenumbruch (Carriage Return) unterbrochen werden.

Folgende Syntax ist also korrekt:
{ "nom" :

"Martin" }

Und folgende Syntax ist nicht korrekt:
{ "nom" : "Mar

tin" }

Bei Eigennamen muss die Groß- und Kleinschreibung beachtet werden, da die Namen eine Bedeutung tragen (die Attribute "Nom" und "nom" sind nicht identisch).

Basisverzeichnis

Im Basisverzeichnis liegen die spezifischen Bibliotheken und die Konfigurationsdateien. Das Basisverzeichnis ist ein Unterverzeichnis des Verzeichnisses X3_PUB. X3_PUB kann mithilfe des Taschenrechners bestimmt werden:

filpath("","","","X3_PUB")

Von diesem Verzeichnis aus wird das Unterverzeichnis gesucht:

X3_ROOT\X3CLI\XBLOCK\      (unter Windows)

X3_ROOT/X3CLI/XBLOCK/      (unter Unix oder Linux)

Dieses Verzeichnis enthält das Unterverzeichnis FLASH, welches die Standard-Grafikkomponenten enthält. Die spezifischen Komponenten werden im Verzeichnis FLASH_CUSTOM angelegt, welches sich auf derselben Ebene befindet (also im Verzeichnis XBLOCK). Ist dieses Verzeichnis nicht vorhanden, muss es zunächst angelegt werden.

Hinweis: Das Verzeichnis FLASH_CUSTOMREF enthält ein Unterverzeichnis namens FLASH. Ist das Verzeichnis FLASH_CUSTOM nicht vorhanden, muss FLASH_CUSTOMREF in das Verzeichnis XBLOCK kopiert und dann umbenannt werden. Damit steht ein Verzeichnis mit Beispielen für Konfigurationsdateien wie nachstehend beschrieben zur Verfügung.

Das Verzeichnis FLASH_CUSTOM wird als Basis-Komponentenverzeichnis betrachtet. Im Folgenden wird sein Inhalt beschrieben.

Unterverzeichnis und Inhalt

  • Die Unterverzeichnisse von FLASH_CUSTOM sind: _params, das eine Konfigurationsdatei enthält, und _param_main.txt, das unverändert gelassen wird
  • FlowCharting mit wiederum drei Unterverzeichnissen:PadDev
    • und PadPlayer . Diese beiden Verzeichnisse enthalten jeweils eine Konfigurationsdatei namens _params.txt. Diese beiden Dateien sind zwar technisch nicht identisch, sie sollten aber dennoch auf dieselbe Weise konfiguriert werden. Ihr Inhalt ist in JSON geschrieben und umfasst den Namen und Standort der Bibliotheken (Hinweis: Jede Bibliothek ist ein Ordner im Ordner libraries_custom).
    • libraries_custom enthält die Grafikbibliotheken libraries_custom

enthält pro Grafikbibliothek ein Unterverzeichnis, in dem sich wiederum ein Unterverzeichnis pro Gruppe (eine Gruppe entspricht einer Themenliste) und ein Unterverzeichnis pro Thema (ein Thema entspricht einer Bildersammlung) befindet. In diesem Verzeichnis liegen die Bilder, bei denen es sich um Dateien mit einer der folgenden Erweiterungen handelt: .jpg, .gif, .png. Weiterhin liegt in diesem Verzeichnis eine letzte Konfigurationsdatei namens list.txt , der eine Liste der im Verzeichnis vorhandenen Bilddateien zu entnehmen ist. Beispiel für eine innerhalb einer Unternehmensgruppe definierten Software: Mögliche Konfiguration:eine Bibliothek pro Unternehmen:

  • MYCORP, MASOC...MEINGMBH
  • pro Bibliothek eine Gruppenliste: pictures, images, backgrounds, logospro Gruppe einige Themen. Die Gruppe
  • pictures könnte ein ThemaSites enthalten, das Fotos der verschiedenen Unternehmensstandorte umfasst. Das weitere ThemaPeople könnte Fotos von Unternehmensmitarbeitern umfassen, und das ThemaProducts könnte Produktfotos umfassen etc.Daraus ergäbe sich folgende Hierarchie:

 MYCORP

 

 

 

pictures

 

 

 

People

 

 

 

 

 list.txt

 

 

 

 MARTIN.jpg

 

 

 

HENRY.png

 

 

 

DAVID.gif

 

 

Sites

 

 

 

 

 list.txt

 

 

 

PARIS.gif

 

 

 

LONDON.jpg

 

 

...

 

 

 images

 

 

 

 

schemas

 

 

 

 

 list.txt

 

 

 

MAP.png

 

...

 

 

MASOC

 

 

 

 

...

 

 

Datei _params.txt

Diese Datei liegt in den beiden Verzeichnissen PadDev und PadPlayerund umfasst den Namen und Standort Ihrer Bibliotheken. Beispiel:

{

  "bibOriginsInfo" :

          [      {"labels" :

                       [

                            {"lang" : "ENG" , "label" : "Company MYCORP"},

                            {"lang" : "FRA" , "label" : "Société MYCORP"},

....

                            {"lang" : "GER" , "label" : "MYCORP Gesellschaft" }

                        ],

                   "originSubpath" : "../FLASH_CUSTOM/FlowCharting/libraries_custom/MYCORP",

                   "id" : "identificateur_1"

                   },

                 {"labels" :

                              {"lang" : "ENG" , "label" : "Company MASOC"},

....

                              {"lang" : "GER" , "label" : "MASOC Gesellschaft" }

                        ],

                   "originSubpath" : "../FLASH_CUSTOM/FlowCharting/libraries_custom/MASOC",

                   "id" : "identificateur_2"

                   },

...

                 {"labels" :

                     [        {"lang" : "ENG" , "label" : "Company MEINGMBH"},

....

                               {"lang" : "GER" , "label" : "MEINGMBH Gesellschaft" }

                      ],

                   "originSubpath" : "../FLASH_CUSTOM/FlowCharting/libraries_custom/MEINGMBH",

                   "id" : "identificateur_M"

                   }

          ],

          "r" : 0,

          "v" : 1

}

Für obige Datei gilt:

  • "bibOriginsInfo" referenziert eine Tabelle, in der jedes (in geschweifte Klammern gesetzte) Element Attribute einer Bibliothek enthält. Wie alle in JSON geschriebenen Tabellenelemente werden die einzelnen Elemente per Komma getrennt (nur auf das letzte Element folgt kein Komma).
  • Eine Bibliothek wird durch folgende Daten beschrieben:
    • "labels" entspricht dem im Prozesseditor anzuzeigenden Titel, der wiederum einer Strukturtabelle entspricht (ein Element pro Verbindungssprachcode, wobei auf den Sprachcode das betitelte Element folgt)
    • "originSubpath" entspricht dem Pfad des Unterverzeichnisses, in dem die Bibliothek liegt
    • "id" entspricht einer freien, aber eindeutigen Id
    • "r" und "v" sind zwei Parameter, die nicht geändert werden dürfen

In obiger Datei lauten die Basisverzeichnisse der Bibliotheken also MYCORP, MASOC, MEINGMBH.

Datei sgx_libsinfo.txt

Diese Datei liegt im Basisverzeichnis der Bibliothek (in obigem BeispielMYCORP) und enthält eine in JSON geschriebene Beschreibung der Bibliothekstruktur. In obigem Beispiel könnte ihr Inhalt wie folgt lauten:

{  "libsinfo" :
      [
          { "biblist" :
                [
                   {"bibid" : "mycorp_1",
                     "catsubpath" : "people",
                     "h":70,
                     "w":70,
                     "type":"file",
                     "labels" :
                          [
                                 {"lang" : "ENG", "label" : "People" },
                                 {"lang" : "FRA", "label" : "Personnes" },
....
                                 { "lang" : "GER", "label" : "Leute"}
                          ]
                   },                  
....                   
                   { "bibid" : "mycorp_N",
                      "catsubpath" : "sites",
                      "h":30,
                      "w":40,     
                      "type":"file",
                      "labels" :
                          [  
                                 {"lang" : "ENG", "label" : "Sites" },
...
                                 { "lang" : "GER", "label" : "Standorte"}
                          ]
                   }
                ], 
            "labels" :
                   [
                      {"lang" : "ENG", "label" : "Pictures" },
                      {"lang" : "FRA", "label" : "Photos" },
....
                      {"lang" : "GER", "label" : "Fotos" }
                   ],
            "familysubpath":"pictures",
            "familyid":"pic_mycorp"
          },
          { "biblist" :
                [
                   { "bibid" : "mycorp_2",
                     "catsubpath" : "schemas",
                     "h":70,
                     "w":70,
                     "type":"file",
                     "labels" :
                          [
                                 {"lang" : "ENG", "label" : "Schemes" },
....
                                 {"lang" : "FRA", "label" : "Schemas" }
                          ]
                   },                  
....
                   }
                ], 
            "labels" :
                   [
                      {"lang" : "ENG", "label" : "Images" },
                      {"lang" : "FRA", "label" : "Images" },
....
                      {"lang" : "GER", "label" : "Bilder" }
                   ],
            "familysubpath":"images",
            "familyid":"img_mycorp"
          }
      ],
   "oid" : "mycorp",
   "r" : 0,
   "v" : 1
}

Für obige Datei gilt:

  • "libsInfo" referenziert eine Tabelle, in der jedes Element Attribute einer Gruppe enthält. Wie alle in JSON geschriebenen Tabellenelemente werden die einzelnen Elemente per Komma getrennt (nur auf das letzte Element folgt kein Komma).
  • Eine Gruppe wird durch folgende Daten beschrieben:
    • Tabellenförmige Themenliste "bibid" mit Themenunterverzeichnis "catsubpath", Attribute "h" und "w" für die Thumbnail-Größe, Bibliothektyp "type" mit "file" (für Grafikdateien im Themenverzeichnis) bzw. "swf" (für swf-Dateilisten), pro Sprache eine Thementiteltabelle
    • pro Sprache eine Bezeichnungstabelle zur Benennung der Gruppe
    • Gruppenpfad "originSubpath", welcher dem Pfad des Unterverzeichnisses entspricht, in dem die Gruppe liegt
    • "familyid" entspricht einer freien, aber eindeutigen Id

Schließlich die Dateiparameter

  • "r" und "v" sind zwei Parameter, die nicht geändert werden dürfen
  • "oid", welcher die Bibliothek eindeutig referenziert

In diesem Beispiel werden die Gruppen pictures (mit den Themen personnesund sites) und images (mit dem Thema schémas) verwendet.

Durch die Parameter "h" und "v"ist die Thumbnail-Größe in Pixeln definiert, die im Bild-Explorer für ein gegebenes Thema verwendet wird. Falls hier keine Angabe gemacht wurde, wird der Wert 40 verwendet.

Beispiel für eine Thumbnail-Liste:

  • in Größe 40x40:

 ./GES_APR_img4040.jpg

  • in Größe 180x60:

 ./GES_APR_img18060.jpg

Datei list.txt

Diese Datei liegt im Basisverzeichnis zu einem Thema und enthält eine Liste der dort befindlichen Bilddateien. Die Dateistruktur ist einfach:

{  "files" :
      [
          { "name" : "MARTIN.jpg" }
          { "name" : "HENRY.png" }
          { "name" : "DAVID.gif" }
      ] 
}

Weitere Hierarchieebenen anlegen

In die Hierarchie der Bibliotheken, Gruppen und Themen können weitere Ebenen eingefügt werden.

Für das obige Beispiel hätten z. B. Hierarchien definiert werden können, die ausgehend von Bildern das Kartenverzeichnis map mit einer Länder-, Regionen-, Gebiets-, Kreis- und Stadthierarchie und verschiedene Stadtplänen pro Ordner enthält. Daraus können sich beispielsweise folgende Ordner ergeben:

MYCORP/images/map/USA/tenessee/hamilton/chattanooga (mit verschiedenen Stadtplänen)

Umsetzung:

  • Anlage der entsprechenden Ordnerhierarchien
  • Änderung der beiden Dateien sgx_libinfo.txt, um die Unterordnerdefinition sowie die entsprechenden Titel anzupassen:
    • "catsubpath":"images/map/USA/tenessee/hamilton/chattanooga"
    • "label":"images;map;USA;tennessee;hamilton;chattanooga"
    • "label":"Images;Maps;US Country;Tennesse State;Hamilton County;City of Chattanooga"

Es muss jedoch jeder einzelne Unterordner ausführlich in der Liste beschrieben werden. Und auch nur die letzte Listenebene kann Dateien (und die entsprechende Datei list.txt ) enthalten.

Hingegen ist es möglich, pro Zweig eine unterschiedliche Anzahl von neuen Hierarchien zu haben. Parallel zur oben beschriebenen Hierarchie könnte z. B. folgende Hierarchie existieren:

MYCORP/pictures/animals/mammals/cows (Ordner mit Kuhfotos).

Archiv generieren

Nachdem obige Einstellungen vorgenommen wurden, können die in der Baumstruktur des Servers angelegten Bibliotheken direkt und ohne Einschränkungen im Webmodus verwendet werden.

Um die Bibliotheken im Client-Server-Modus verwenden zu können, muss zunächst ein Archiv namens XCLI.tar angelegt werden, welches sämtliche im Verzeichnis FLASH_CUSTOM befindliche Dateien umfasst.

Dieses Archiv wird mit einem speziellen Hilfswerkzeugangelegt.