Scripting-Dokumentation

Scripting-Dokumentation der graphomate tiles für SAP Lumira Designer

Version 2020.4 – Stand Oktober 2020

PDF

Einführung

Die graphomate tiles Extension unterstützt die Skriptsprache von Designer. Somit ist es möglich, die Extension zur Laufzeit interaktiv zu verwenden. Beispielsweise können neue Daten gesetzt, Titel bearbeitet und Skalierungen verändert werden. Eine Auflistung der gegenwärtigen Funktionen und Beispiele zur Verwendung liefert dieses Dokument. Wir sind bemüht, den Funktionsumfang ständig zu erweitern. Sollten Ihnen bestimmte Funktionen fehlen, teilen Sie uns dies gerne über unser Kontaktformular mit.

Ereignisse

Die nachfolgend aufgelisteten Ereignisse stehen zur Verfügung. Auf diesen können im Standard-Properties-Sheet unter dem Punkt Events vom Benutzer geschriebene Skripte hinterlegt werden.


Ereignis NameBeschreibung
On Element SelectedWird ausgelöst, wenn der Benutzer zur Laufzeit auf ein Element der Kachel klickt. Um einen Drilldown zu ermöglichen, muss an dieser Stelle auf die Benutzereingabe reagiert werden.
Zum Zeitpunkt dieses Ereignisses werden die Rückgabewerte der Funktionen getSelectedMember() und getSelectedModule() aktualisiert.
On Component SelectedWird ausgelöst, wenn der Benutzer zur Laufzeit die Komponente an sich anklickt. Anders als bei On Element Selected wird hier zum Zeitpunkt dieses Ereignisses kein Rückgabewert generiert.

Funktionen

Folgende Funktionen stehen zur Verfügung, diese können innerhalb des Skript-Editors von Designer angesprochen werden:

Getter NameBeispielRückgabetypBeispiel RückgabewertBeschreibung
getBadColor() GRAPHOMATETILE_1
.getBadColor();
String#ff0000Gibt den hexadezimalen Farbcode der Farbe für negative Abweichungen zurück.
getBorderColor()GRAPHOMATETILE_1
.getBorderColor();
String#666666Gibt den hexadezimalen Farbcode der Komponentenumrandung bzw. der Trennlinien zurück.
getBorderThickness()GRAPHOMATETILE_1
.getBorderThickness();
int2Gibt die Dicke der Komponentenumrandung zurück.
getComparisonGroup()GRAPHOMATETILE_1
.getComparisonGroup();
StringAGibt die Comparison Group zurück, in der die Kachel registriert ist. Wird ein Leerstring ("") zurückgegeben, ist das Tile in keiner Comparison Group registriert.
getDataColor1()GRAPHOMATETILE_1
.getDataColor1();
String#ff0000Gibt die Farbe zurück, in der die Werte der ersten Datenserie dargestellt werden.
getDataColor2()GRAPHOMATETILE_1
.getDataColor2();
String#00ff00Gibt die Farbe zurück, in der die Werte der zweiten Datenserie dargestellt werden.
getExtendedNumberFormat()GRAPHOMATETILE_1
.getExtendedNumberFormat();
String-||.|,|1|2| tEURGibt den Formatstring für das Extended Number Format zurück (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
getExtendedNumberFormatPercentage()GRAPHOMATETILE_1
.getExtendedNumberFormatPercent();
String-||.|,|1|2|%Gibt den Formatstring für das Extended Number Format für Prozentwerte zurück (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
getFlipTrigger()GRAPHOMATETILE_1.getFlipTrigger()StringClickGibt den Auslöser des Flip-Effektes zurück. Dies kann entweder "None", "Click", "Double Click" oder "Hover" sein.
getFlipDuration()GRAPHOMATETILE_1.getFlipDuration()int250Gibt die Dauer der Flip-Animation in Millisekunden zurück.
getGoodColor()GRAPHOMATETILE_1
.getGoodColor();
String#00FF00Gibt die Farbe zurück, in der positive Abweichungen dargestellt werden.
getGridSize()GRAPHOMATETILE_1
.getGridSize();
int100Gibt die Größe des Grids zurück, das von der Tile-Komponente für die automatische Größeneinstellung benutzt wird.
getLabelFormatMode()GRAPHOMATETILE_1
.getLabelFormatMode();
StringbasicGibt zurück, ob Wertebeschriftungen mit numeral.js ("basic") oder mit dem Extended Number Format ("extended") formatiert werden sollen.
getLayout()GRAPHOMATETILE_1
.getLayout();
StringLayout111Gibt den Titel des aktuell ausgewählten Layouts zurück.
getLocale()GRAPHOMATETILE_1
.getLocale();
StringdeGibt die aktuelle Locale-Einstellung zurück. Diese bestimmt die Trennzeichen sowie Abkürzungen in der numeral.js-Formatierung.
getModuleProperty()GRAPHOMATETILE_1
,getModuleProperty(1, "title");
StringTotalGibt den Wert einer Property eines ViewModules auf der Vorderseite des Tiles zurück. Der erste Parameter ist die Slotnummer des Moduls, als zweiter Parameter wird der Name der Property erwartet. Die Properties, die für ein Module zur Verfügung stehen, können im Scripthilfe-Popup auf dem Modules-Tab eingesehen werden.
getModulePropertyBackside()

GRAPHOMATETILE_1
,getModuleProperty(1, "title");

StringNetGibt den Wert einer Property eines ViewModules auf der Rückseite des Tiles zurück. Der erste Parameter ist die Slotnummer des Moduls, als zweiter Parameter wird der Name der Property erwartet. Die Properties, die für ein Module zur Verfügung stehen, können im Scripthilfe-Popup auf dem Modules-Tab eingesehen werden.
getNumberFormat()GRAPHOMATETILE_1
.getNumberFormat();
String0.0aGibt den Formatstring für numeral.js-Formatierung zurück (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
getNumberFormatPercentage()GRAPHOMATETILE_1
.getNumberFormatPercent();
String0.0%Gibt den Formatstring für die numeral.js-Formatierung für Prozentzahlen zurück (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
getSelectedMember(Dimension dimensionKey)GRAPHOMATETILE_1
.getSelectedMember("0D_NWI_RCOD").text;
StringWestNachdem der User in der Kachel ein Element/eine Kategorie geklickt hat, gibt diese Funktion den Member der spezifizierten Dimension dimensionKey zurück. Der Member stellt verschiedene Properties wie text, internalKey und externalKey zur Verfügung.
getSelectedModule()GRAPHOMATETILE_1
.getSelectedModule();
int2Gibt den ausgewählten Layout-Slot (den Platz in der Kachel) des Moduls zurück. Die Zählweise beginnt hier mit 1, zählend von oben nach unten und von links nach rechts.
getSelectionsForLayoutSlot(int indexOfLayoutSlots)GRAPHOMATETILE_1.getSelectionsForLayoutSlot(1)String[]

[{"(MEASURES_DIMENSION)":"DS:2,MEAS:id_55"}]

Gibt die Selektionen für das Modul in dem Layout-Slot auf der Forderseite der Kachel zurück. Die Zählweise des Layout-Slots beginnt hier mit 1, zählend von oben nach unten und von links nach rechts.
getSelectionsForLayoutSlotBack(int indexOfLayoutSlots)GRAPHOMATETILE_1.getSelectionsForLayoutSlotBack(1)String[][{"(MEASURES_DIMENSION)":"DS:2,MEAS:id_55"}]Gibt die Selektionen für das Modul in dem Layout-Slot auf der Rückseite der Kachel zurück. Die Zählweise des Layout-Slots beginnt hier mit 1, zählend von oben nach unten und von links nach rechts.
getSnapToGrid()GRAPHOMATETILE_1
.getSnapToGrid();
booleanfalseGibt true zurück, wenn die Kachel ihre Höhe/Breite anhand der eingestellten Grid Size selber bestimmt.
getTextColor1()GRAPHOMATETILE_1
.getTextColor1();
String#000000Gibt die Farbe zurück, in der Überschriften dargestellt werden.
getTextColor2()GRAPHOMATETILE_1
.getTextColor2();
String#999999Gibt die Farbe zurück, in der Category Labels dargestellt werden.
getVisibleSide()GRAPHOMATETILE_1.getVisibleSide()String"Front"Gibt die aktuell sichtbare Seite zurück. Diese Funktion macht nur Sinn in Verbindung mit der setVisibleSide()-Funktion, da ansonsten immer die in Designer eingestellte Seite zurückgegeben wird.



Setter NameBeispielBeschreibung
setBadColor(String)GRAPHOMATETILE_1
.setBadColor(“#ff0000“);
Setzt den hexadezimalen Farbcode der negativen Abweichungen.
setBorderColor(String)GRAPHOMATETILE_1
.setBorderColor(“#666666“);
Setzt die Farbe der Komponentenumrandung bzw. der Slot-Trennlinien auf den übergebenen Farbwert.
setBorderThickness(Integer)GRAPHOMATETILE_1
.setBorderThickness(2);
Setzt die Dicke der Komponentenumrandung auf den übergebenen Wert.
setComparisonGroup(String)GRAPHOMATETILE_1
.setComparisonGroup(“A“);
Setzt die Comparison Group auf den übergebenen Wert. Komponenten in derselben Comparison Group werden identisch skaliert.
setDataColor1(String)GRAPHOMATETILE_1
.setDataColor1 (“#ff0000“);
Setzt die Farbe für die Werte der ersten Datenserie auf den übergebenen Wert.
setDataColor2(String)GRAPHOMATETILE_1
.setDataColor2(“#008b23“);
Setzt die Farbe für die Werte der zweiten Datenserie auf den übergebenen Wert.
setExtendedNumberFormat(String)GRAPHOMATETILE_1
.setExtendedNumberFormat(“-||.|,|1|2| tEUR”);
Setzt den Formatstring für das Extended Number Format auf den übergebenen Wert (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
setExtendedNumberFormatPercentage(String)GRAPHOMATETILE_1
.setExtendedNumberFormatPercent(“-||.|,|1|2|%”);
Setzt den Formatstring für das Extended Number Format für Prozentwerte auf den übergebenen Wert (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
setFlipDuration(int)GRAPHOMATETILE_1.setFlipDuration(500)Bestimmt die Animationsdauer des Flipeffektes. Der Parameter ist ein Wert in Millisekunden.
setFlipTrigger(String)GRAPHOMATETILE_1.setFlipTrigger("None")Bestimmt den Auslöser des Flipeffektes. Mögliche Übergabewerte sind "None", "Click", "Double Click" oder "Hover".
setGoodColor(String)GRAPHOMATETILE_1
.setGoodColor(“#00ff00“);
Setzt die positive Abweichungsfarbe auf den übergebenen Wert.
setGridSize(int)

GRAPHOMATETILE_1
.setGridSize(100);

Setzt die Grid Size auf den übergebenen Wert.
setLabelFormatMode(String)

GRAPHOMATETILE_1
.setLabelFormatMode(“basic“);

Bestimmt, ob Wertebeschriftungen mit numeral.js oder dem Extended Number Format formatiert werden sollen. Als Übergabewerte akzeptiert werden basic und extended; bei Übergabe anderer Werte wird auf „basic“ (für numeral.js) zurückgefallen.
setLayout(String)

GRAPHOMATETILE_1
.setLayout(“Layout122“);

Setzt das Layout einer Kachel auf das übergebene Format. Folgende Werte werden als gültig akzeptiert: Layout100, Layout110, Layout111, Layout112, Layout120, Layout121, Layout122 und Layout200, Layout211, Layout212, Layout220, Layout221 sowie Layout222.

Die Zahlen stehen dabei für die Anzahl der Zellen in den einzelnen Zeilen. Layout111 repräsentiert ein dreizeiliges Layout mit jeweils einer Zelle pro Zeile. Layout122 repräsentiert ein Layout mit einer durchgehenden Überschrift sowie je zwei Zellen in den Spalten 2 und 3.

Falls ein Wert übergeben wird, der keinem Layout zugeordnet werden kann, wird auf Layout100 zurückgefallen.

setLocale(String)GRAPHOMATETILE_1
.setLocale(“de“);
Setzt die Locale-Einstellung. Akzeptierte Werte sind de (deutsch), fr (französisch) sowie en (englisch). Wird ein anderer Wert übergeben, wird auf en zurückgefallen.
setModuleProperty(Integer targetModule, String targetProperty, String newValue)GRAPHOMATETILE_1
.setModuleProperty(1, "title", "Title set by script");

Mit diesem Befehl lassen sich die Eigenschaften der Modules steuern. Da die zur Verfügung stehenden Module-Properties erst beim Zuweisen der Modules festgelegt werden, finden Sie die zur Verfügung stehenden Properties im Script-Hilfe-Popup auf dem Modules-Tab.

Der Parameter targetModule bezeichnet dabei die Stelle im Layout, an der das Modul zu finden ist (bei einem dreizeiligen Layout wären dies also 1, 2 und 3). targetProperty ist der Name der zu setzenden Property. Bei einem Title Module könnte dies z. B. title sein. Als dritter Parameter wird der neue Wert der Property erwartet.

setNumberFormat(String)GRAPHOMATETILE_1
.setNumberFormat(“0,0.00a“);
Setzt den Formatstring für die numeral.js-Formatierung auf den übergebenen Wert (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
setNumberFormatPercentage(String)GRAPHOMATETILE_1
.setNumberFormatPercent(“0,0.00%“);
Setzt den Formatstring für die numeral.js-Formatierung für Prozentwerte auf den übergebenen Wert (Aufbau siehe Anhang des Handbuchs der graphomate tiles).
setSelection(String selectionName, String selectionString)GRAPHOMATETILE_1.setSelection("dataSingleCell4", '{"Keyfigures": "0D_NWI_IQTY", "0D_NWI_CHAN": "4"}');

Setzt die übergebene Daten-Property auf die übergebene Selektion. Erwartet selectionString als JSON- String. Dieser String beschreibt entweder eine Zeile, eine Spalte oder eine Einzelzelle in der Initial View. Der String kann ausgelesen werden, nachdem man mit der graphomate tiles Extension im Property Sheet Daten für eine Datenserie selektiert hat.

Die als selectionName einzusetzenden Bezeichnungen der Daten-Properties weichen leicht von denen im Standard Property Sheet ab: für ResultCells ist dies dataSingleCell, für ResultCellLists muss dataCellList verwendet werden, jeweils gefolgt von der Nummer der Datenserie.

Im Script-Hilfe-Popup (siehe Beschreibung Modules-Tab im Handbuch der graphomate tiles) sind die für das jeweilige Modul gültigen Parameter bereits enthalten. Die Reihenfolge der setSelection-String-Befehle im Popup entspricht der Reihenfolge der Datenzuordnungen im Additional Property Sheet.

setSnapToGrid(Boolean)GRAPHOMATETILE_1.setSnapToGrid(true);Wird true übergeben, richtet sich die Kachel an der eingestellten Grid Size aus.
setTextColor1(String)GRAPHOMATETILE_1.setTextColor1 (“#ff0000“);Setzt die Farbe für Überschriften auf den übergebenen Wert.
setTextColor2(String)GRAPHOMATETILE_1.setTextColor2 (“#666666“);

Setzt die Farbe für Category Label auf den übergebenen Wert.

setVisibleSide(String)GRAPHOMATETILE_1.setVisibleSide("Back");Setzt die sichtbare Seite auf den übergebenen Wert. Gültige Werte sind "Front" und "Back".
toggleFlip()GRAPHOMATETILE_1.toggleFlip();Löst einen einmaligen Flipeffekt aus, unabhängig vom Wert der Property flipTrigger.