Scripting

Die graphomate charts Extension unterstützt die Skriptsprache von Designer umfassend. Somit ist es möglich graphomate charts zur Laufzeit interaktiv zu steuern.
Beispielsweise können neue Daten gesetzt, Titel bearbeitet und Skalierungen verändert werden. Weiterhin ist es möglich, Drilldown-Funktionalitäten der Extension zu verwenden und interaktive Dashboards zu erstellen.

Beispiel: Mit Hilfe einer Dropdown-Box eine Data Source dynamisch Filtern

Um auf einer Dimension einer Data Source dynamisch zu filtern, muss zuerst eine Dropdown-Box mit allen zulässigen Werten befüllt werden, damit der User aus dieser später dann seine Wahl treffen kann.
Dafür wird auf dem Canvas-Event On Startup von der gewünschten Data Source mit getMemberList eine Liste aller Member der Dimension 0D_NWI_ACOD geholt. Die Parameter von getMemberList werden dabei vom Autocomplete vorgeschlagen.

Die so erlangte List kann dann per setItem auf die Dropdown-Box gesetzt werden.

var memberList = DS_1.getMemberList("0D_NWI_ACOD", MemberPresentation.INTERNAL_KEY, MemberDisplay.TEXT, 10); 
DROPDOWN_1.setItems(memberList);

Nun wird die Dropdown-Box beim Applikations-Start mit den Membern der Dimension 0D_NWI_ACOD befüllt.

Selektiert nun ein User ein Element aus der Liste, kann mit folgendem Skript, welches auf das Ereignis On Element Clicked der Dropdown-Box gelegt wird, der Filter der Data Source angepasst werden:

var selectedMemberKey = DROPDOWN_1.getSelectedValue();
DS_1.setFilter("0D_NWI_ACOD", selectedMemberKey);


Beispiel: User Highlights mittels Bookmarks speichern

Zur Laufzeit lassen sich sogenannte User Highlights um ausgewählte Werte setzen (siehe Interaktivität zur Laufzeit ). Um diesen Zustand zu speichern, bedarf es zweier Schaltflächen:

  1. Speichern des Bookmarks und
  2. Laden des Speicherstandes.


Um die ID des Bookmarks zwischen zu speichern, bedienen wir uns der Einfachheit halber eines Textfeldes (im Beispiel TEXT_2), in das die ID geschrieben wird. Diesen Schritt kann man mittels Variablen auch visuell ausblenden.

Der für das Speichern zuständige Button erhält folgendes Skript, um in die Variable id den Bookmark-Zustand zu speichern. Die Variable wird zur Sicherung dann in ein Textfeld geschrieben:

var id = Bookmark.saveBookmark("Bookmark");
TEXT_2.setText(id);

Der für das Laden zuständige Button erhält folgendes Skript und liest damit die ID aus dem Textfeld aus und stellt diesen Bookmark-Zustand wieder her:

var id = TEXT_2.getText();
Bookmark.loadBookmark(id);


Weitere Erläuterungen und Beispiele zur Skriptsprache finden Sie in unserer Scripting-Dokumentation.