Zum Inhalt

ACPGantt

Beschreibung - Widget

Diese Funktion stellt eine übersichtlichere Alternative zur Standard-Planungsansicht in CAS genesisWorld dar, indem sie ein Gantt-Diagramm verwendet.

image.png

Changelog

Changelog hier.

Voraussetzungen

Das Widget besitzt keine expliziten Voraussetzungen. Es sollte jedoch berücksichtigt werden, dass sämtliche Felder, Verknüpfungen usw., die in der Konfigurationsdatei angegeben werden, auch existieren müssen.

Installation Widget

Installationsanleitung finden Sie hier

Update Widget

Updateanleitung finden Sie hier

Konfiguration Widget

Konfigurationsdatei

Das Widget kann auf zwei verschiedene Arten konfiguriert werden mit und ohne SQL-Anweisung. Mittels SQL-Anweisung können komplexere Abfragen erstellt werden, jedoch sind dann die Parameter "attribute", "orderByField", "orderDirection" und "statusFilter" obsolet. Darüber hinaus wird in der Oberfläche der erweiterte Filter, sowie der Dropdownfilter ausgeblendet.

Optionale Knoten sollten immer entfernt werden, sofern sie nicht verwendet werden.

INFO

In diesem Abschnitt können Datensatztypen, Felder und Verknüpfungsarten konfiguriert werden.
Bitte beachten Sie, dass hier immer die technischen Namen eingetragen werden müssen. Dabei sollten die technischen Namen vollständig in Großbuchstaben geschrieben werden!

ACHTUNG

Bitte bearbeiten Sie niemals die Beispieldatei.
Wenn Sie Anpassungen vornehmen möchten, kopieren Sie die Beispieldatei und benennen Sie sie entsprechend um.

  1. Im Datei-Explorer folgenden Pfad öffnen:
    C:\Program Files (x86)\Common Files\CAS-Software\Server\JavaServices\smartdesign-apps\{@DATENBANKNAME}\smartdesign.base\smartdesign\base\webcontent\{WIDGETNAME}\assets\configs
    
  2. Datei "example-config.json" im selben Ordner kopieren und einen entsprechenden Namen geben.

  3. Kopierte Datei bearbeiten.

usedInCockpit

"usedInCockpit": false

Beschreibung
  • usedInCockpit:
    • Beschreibung: Definiert ob das Widget im Cockpit installiert ist oder in einer App.
    • Mögliche Werte: true / false


statusFilter (optional)

"statusFilter": {
    "level": "second",
    "field": "GWSSTATUS",
    "selectValues": {
        "de": ["In Planung", "In Bearbeitung", "Abgeschlossen" ]
    }
Ein Dropdownfilter auf ein bestimmtes Feld, mit frei definierbaren Filterwerten, ermöglicht eine flexible Datenfilterung.

INFO

Der Knoten kann nur verwendet werden, sofern keine SQL-Anweisung verwendet wird.

Beschreibung
  • level:
    • Beschreibung: Steuert das Level bzw. auf welche Datensatztypen der Filter angewendet werden soll.
    • Mögliche Werte: first; second; third
  • field:
    • Beschreibung: Auf dieses Feld wird der Filter angewendet.
    • Mögliche Werte: Textfeld aus dem Datensatz des entsprechenden Levels. Bsp.: GWSTATUS
  • selectValues (optional):
    • Beschreibung: Die Auswahlmöglichkeiten in der Auswahlliste des Statusfilters. Wird der Knoten weggelassen, werden die Eingabehilfen aus der Datenbank angezeigt.
    • Mögliche Werte: ["Wert1", "Wert2", "WertX" ]


firstLevel ohne SQL

"firstLevel": {
    "datatype":"TODO",
    "color":"#76a3d1",
    "pointColor":"#2167b0",
    "filter":"START_DT > '2022-01-12'",
        "attribute":["Verbindung"],
    "orderByField": "OWNERNAME",
    "orderDirection": "ASC",        
    "fields": {
        "column1Text":"KEYWORD",
        "column2Text": "OWNERNAME",
        "from":"START_DT",
        "to":"END_DT"       
    }
}
ODER

firstLevel mit SQL

SQL-Anwweisungen müssen in allen Leveln angegeben werden.

"firstLevel": {
    "datatype":"TODO",
    "color":"#76a3d1",
    "pointColor":"#2167b0",
    "filter":"START_DT > '2022-01-12'",
        "sql":"SELECT ...",
    "fields": {
        "column1Text":"KEYWORD",
        "column2Text": "OWNERNAME",
        "from":"START_DT",
        "to":"END_DT"       
    }
}

Beschreibung
  • datatype:
    • Beschreibung: Der Datensatz-typ welcher angezeigt werden soll.
    • Mögliche Werte: beliebiger Datensatz-Typ "PROJECT"
  • color:
    • Beschreibung: Die Farbe des Ganttblockes.
    • Mögliche Werte: "#a70101"; "rgb(243,21,105)"
  • pointColor:
    • Beschreibung: Die Farbe des Punktes im Ganttblock.
    • Mögliche Werte: "#a70101"; "rgb(243,21,105)"
  • filter (optional):
    • Beschreibung: Zusätzlicher fest eingestellter Filter.
    • Mögliche Werte: Datenbankfeld, Operator und Value. Bsp.: "START_DT > '2022-01-12'"
  • sql (optional):
    • Beschreibung: SQL-Anweisung, weitere Infos unter SQL-Query.
    • Mögliche Werte: SQL-Query
  • attribute (optional):
    • Beschreibung: Variablennamen für die Übersetzung; Rolle des Knotens
    • Mögliche Werte: beliebiger String
  • orderByField (optional):
    • Beschreibung: Feldname nach dem Sortiert werden soll.
    • Mögliche Werte: beliebiges Datenbankfeld
  • orderDirection (optional):
    • Beschreibung: Sortierrichtung
    • Mögliche Werte: ASC; DESC
  • fields:
    • column1Text:
      • Beschreibung: Variablennamen für die Übersetzung; Rolle des Knotens
      • Mögliche Werte: beliebiger String
    • column2Text:
      • Beschreibung: Variablennamen für die Übersetzung; Rolle des Knotens
      • Mögliche Werte: beliebiger String
    • from:
      • Beschreibung: Variablennamen für die Übersetzung; Rolle des Knotens
      • Mögliche Werte: beliebiger String
    • to:
      • Beschreibung: Variablennamen für die Übersetzung; Rolle des Knotens
      • Mögliche Werte: beliebiger String


Weitere Levelblöcke:

secondLevel (optional)

Es werden nur die Datensätze angezeigt, welche mit dem Datensatz im firstLevel verknüpft sind.

"secondLevel": {
    "datatype": ...     
    }
}
thirdLevel (optional)

Es werden nur die Datensätze angezeigt, welche mit dem Datensatz im secondLevel verknüpft sind.

"thirdLevel": {
    "datatype": ...         
    }
}

SQL-Query - Allgemein

Es sind alle Felder, die im Knoten "Fields" angegeben sind und die GGUID im SELECT anzugeben. In den SQL Anweisungen müssen Felder mit Alias "frs" angegeben werden. Die Platzhalter {{Filter}} und {{Gguid}} müssen immer angegeben werden.

Platzhalter Beschreibung
{{Filter}} Platzhalter für den Filter.
{{Gguid}} Gguid des übergeordneten Datensatzes.
  1. firstLevel

    1.1. Widget läuft im Cockpit ("usedInCockpit": true)

    SELECT DISTINCT frs.PROJECTOWNER, frs.KEYWORD, frs.STARTDATE, frs.ENDDATE, frs.GGUID
    FROM PROJECT AS frs 
    WHERE {{Filter}} TEAMFILTER(PROJECT;CASLOGGEDINUSER,CASPUBLICRECORDS,CASEXTERNALACCESS)
    

    1.2. Widget läuft in einem Datensatz ("usedInCockpit": false)

    SELECT DISTINCT frs.STATUS, frs.WORD, frs.START, frs.END, frs.GGUID 
    FROM TODO AS frs 
    WHERE {{Filter}} frs.isLinkedToWhere(PROJECT AS par: WHERE par.GGUID={{Gguid}} AND 
    TEAMFILTER(PROJECT;CASLOGGEDINUSER,CASPUBLICRECORDS,CASEXTERNALACCESS)) AND
    TEAMFILTER(TODO;CASLOGGEDINUSER,CASPUBLICRECORDS,CASEXTERNALACCESS) ORDER BY frs.START_DT DESC
    
  2. secondLevel und thirdLevel

    SELECT DISTINCT frs.STATUS, frs.WORD, frs.START, frs.END, frs.GGUID 
    FROM TASK AS frs 
    WHERE {{Filter}} frs.isLinkedToWhere(TODO AS par: WHERE par.GGUID={{Gguid}} AND 
    TEAMFILTER(TODO;CASLOGGEDINUSER,CASPUBLICRECORDS,CASEXTERNALACCESS)) AND
    TEAMFILTER(TASK;CASLOGGEDINUSER,CASPUBLICRECORDS,CASEXTERNALACCESS)
    

App Designer

  1. Loggen Sie sich im genesisWorld SmartDesign ein.
  2. Öffnen Sie die Administrations-App.
  3. Klicken Sie auf den App Designer Abschnitt im linken Teil der Seite.
  4. Klicken Sie im Kästchen Session auf "Aktivieren".
  5. Navigieren Sie im Anschluss in die App wo das Widget eingebunden ist.
  6. Öffnen Sie eine beliebige App und navigieren Sie zu einem beliebigen Datensatz.
  7. Klicken Sie am oberen rechten Rand der Seite auf "Anpassen".
  8. Klicken Sie nun auf das Widget um die Konfiguration zu bearbeiten.

image.png

Parameter Mögliche Werte Beschreibung
Konfigurationsdatei example-config.json Name und Dateiendung der zu verwendenden Konfigurationsdatei.
Anzeigebreite 400px Breite des Widgets
Anzeigehöhe 400px Höhe des Widgets

Übersetzung

Im Standard werden immer Deutsch und Englisch mitgeliefert (de.json; en.json). Anpassungen können in den Dateien vorgenommen werden, jedoch ist zu beachten, dass diese bei einem Update des Widget überschrieben werden.

Pfad zu den Übersetzungsdateien:

C:\Program Files (x86)\Common Files\CAS-Software\Server\JavaServices\smartdesign-apps\{@DATENBANKNAME}\smartdesign.base\smartdesign\base\webcontent\{WIDGETNAME}\assets\lang

Wenn Sie für eine Widget-Integration individuelle Übersetzungen benötigen, erstellen Sie eine Kopie der Standard-Sprachdatei und benennen diese passend zur Konfigurationsdatei des Widgets.

Vorgehen:

  • Konfigurationsdatei: Jedes Widget hat eine eigene Konfigurationsdatei, z.B. example-config.json.
  • Standardsprachdatei: Standardmäßig werden de.json und en.json verwendet.
  • Angepasste Sprachdatei: Erstellen Sie eine Kopie und benennen Sie sie z.B. example-config_de.json für Deutsch.

INFO

Wenn eine angepasste Sprachdatei verwendet wird, müssen die nachfolgenden Parameter in der Konfigurationsdatei des Widget auf true gesetzt werden. Weitere Informationen finden Sie hier.
- useTranslations
- useTranslationsConfiguration

Beispieldatei:

{
    "DROPDOWN_FILTER": "Filter Vorgänge",
    "COLUMN_1": "Gesamtansicht",
    "COLUMN_2": "zugewiesen",
    "MENU": "erweiterter Suchfilter",
    "CLOSE_ALL": "alles schließen",
    "OPEN_ALL": "alles öffnen",
    "FILTER_SECOND_LEVEL": "Filter für Aufgaben",
    "FILTER_THIRD_LEVEL": "Filter für Vorgänge",
    "SEARCH_BAR": "Suche",
    "LOCALES": "de-DE",
    "CALENDER_WEEKS": "Kalenderwochen",
    "SHORT_WEEK": "KW",
    "MENU_DAYS": "Tage",
    "MENU_WEEKS": "Wochen",
    "MENU_MONTHS": "Monate"
}

Beschreibung

DROPDOWN_FILTER
Text im Statusfilter.

COLUMN_1
Bezeichner im Tabellenkopf für die Hauptspalte.

COLUMN_2
Bezeichner im Tabellenkopf für die 2. Spalte.

MENU
Tooltip für Menü Button.

CLOSE_ALL
Tooltip für den Öffnen/Schließen Button, wenn alles offen ist.

OPEN_ALL
Tooltip für den Öffnen/Schließen Button, wenn alles geschlossen ist.

FILTER_SECOND_LEVEL
Eingabefeld Beschriftung im Menü (1. Spalte).

FILTER_THIRD_LEVEL
Eingabefeld Beschriftung im Menü (2. Spalte).

SEARCH_BAR
Text im Suchfeld.

LOCALES
Lokalisierung des Kalenders.

CALENDER_WEEKS
Anzeige der Beschriftung im Gantt (Header).

SHORT_WEEK
Anzeige der Beschriftung im Gantt (Header).

MENU_DAYS
Anzeige der Beschriftung im Gantt (Footer).

MENU_WEEKS
Anzeige der Beschriftung im Gantt (Footer).

MENU_MONTHS
Anzeige der Beschriftung im Gantt (Footer).

Möchte man das Widget mehrfach mit unterschiedlichen Konfigurationen und Übersetzungen verwenden, so muss folgendes beachtet werden.

1. Anpassungen der ACP-config.json

Die Datei ist unter folgendem Pfad abgelegt:

C:\Program Files (x86)\Common Files\CAS-Software\Server\JavaServices\smartdesign-apps\{@DATENBANKNAME}\smartdesign.base\smartdesign\base\webcontent\{WIDGETNAME}\assets

Die Parameter "useTranslations" und "useTranslationsConfiguration" müssen auf "true" gesetzt werden.

{
    "logLevel":"ERROR",
    "useTranslations": true,
    "useTranslationsConfiguration": true
}

Beschreibung
  • logLevel:
    • Beschreibung: Einstellung des Widget, welche Informationen in der Konsole angezeigt werden.
    • Mögliche Werte: Error, Warning, General
  • useTranslations:
    • Beschreibung: Einstellung ob für das Widget Übersetzungen aktiviert werden.
    • Mögliche Werte: true / false
  • useTranslationsConfiguration:
    • Beschreibung: Einstellung ob explizite Übersetzungskonfiguration verwendet werden soll.
    • Mögliche Werte: true / false

2. Sprachdatei für Konfiguration erstellen

Erstellen Sie eine Kopie der "de.json" Datei und ändern Sie den Namen wie folgt:

Bsp.:

Konfigurationsdatei: example-config.json
Sprachdatei: de.json
Angepasste Sprachdatei: example-config_de.json

Nun wird die Sprachdatei nur für das Widget angewendet, bei dem die entsprechende Konfiguration hinterlegt ist.