https://github.com/Ac1d0n3/Qlik-Sense-Framework

 

 

Installation

Qlik Sense Desktop Client

Kopieren Sie die beiden Ordner Apps und Extensions und fügen Sie diese unter C:\Benutzer\IhreBenutzerName\Qlik\Sense ein. Sie können auch den Inhalt der Ordner einzeln in die beiden Ordner einfügen.

Wenn Sie den Ordner Qlik Sense Framework direkt auf C:\ ablegen, brauchen Sie innerhalb der Dateien keine Datenverbindungen ändern, da diese schon für diesen Pfad eingerichtet sind.

Sollten Sie den Include Ordner wo anderes ablegen, müssen Sie im Dateneditor die Verbindungen über den Stift entsprechend anpassen, damit Sie die Skripte ausführen können.

Der Ordner qvds ist nur exemplarisch angelegt und wird für die Funktion des Frameworks nicht unbedingt benötigt.

Qlik Sense Server

  1. Importieren Sie die App Framework.qvf auf dem Server
  2. Legen Sie den Include Ordner auf dem Sense Server ab (am besten im Qlik Share
  3. Öffnen Sie die App im Hub und ändern Sie die Datenverbindung zu dem Include Folder
  4. Geben Sie die DataConnection zum include Ordner über die QMC für Entwickler frei
  5. Erstellen Sie den Entwicklern eine Kopie der App Framework.qvf

 

 

# Die Framework.qvf

Tab Doku

Tab zur Dokumentation ihres Projektes

Reiter  # Config / Main

// define Project Name here 
set ProjectName = 'Transfomer';
// path to the include Scripts for this template
set incPath = 'lib://include/';
// FrameworkFile
set FrameworkFile = 'Framework.xlsx';
// define Variable Definition for Default Scriptvars
set MainVarsDefinition 	= 'DE';
// Rename Type (Aliase or Translate or FromTo) 
set RenameType	= '';
// Fieldlanguage for Translation and BI Governance
set FieldLanguage = 'DE';
// Load only Expressions for used tables	
Set BIGovWhereTables 	= '';
// RootPath for Files like Excel txt etc.		
set DataSourcePath = 'lib://qvdImport';
// ExportPath for QVD's
set exportDestination 	= 'lib://qvdExport'; 
// Export Type (qvd or txt)			
set exportType 	= 'qvd';
// dropTables after export (true or false (default = false))
set dropTables	= 'false';
// Null Value Handling
//set NULLINTERPRET = 'N/A';
//set NULLDISPLAY = 'N/A';
// Hide Fields
//set HidePrefix = '%';
//set HideSuffix = '_';
 
Zeile 2

Geben Sie hier den Projektnamen an.
Sie können im IncludeFolder eine Datei mit dem Namen Ihres Projektes hinzufügen, welche dann auch geladen wird. Diese dient z.B. dem anlegen von Variablen wie Author, Version, etc.

Wenn Ihr Projekt z.B. „MeinQlikDok“ heißt würde die Datei wie folgt lauten: MeinQlikDok.project.qvs. Das einbinden der Datei erfolgt über Zeile 34

Zeile 6

verweist auf den Include Folder muss nur geändert werden wenn sich der Name der Datenverbindung ändert. Pfad zu dem Include Folder, diesen können Sie anpassen indem Sie auf den Stift der Datenverbindung klicken.

Zeile 8

bindet die Variablen ein die normalerweise im Script eingefügt werden hier besteht die Option diese an die jeweilige Region anzupassen. Siehe MainVars.qvs 

Zeile 10

siehe auch RenamFields.qvs

Zeile 12

Die Variable FieldLanguage wird für die BI-GovernanceMaster.qvs als auch für das Skript GUI-Languages.qvs genutzt.

Zeile 14

Dient zum Einschränken der BI-Governance Tabelle

Zeile 16

Beispiel Pfad zu den Dateien im Dateisystem.

Zeile 18 / 20 / 22

sind die Variablen welche das Skript exportData.qvs benötigt.

Zeile 24/25

Kommentieren Sie diese beiden Zeilen wieder ein um alle NULL Werte mit dem angegeben Wert zu füllen.

Reiter Your Script

Hier und auf den folgenden Tabs sollten Sie Ihr Script unterbringen.

Reiter Calendar (nur Beispiel) ggf. löschen

// Loading MasterCalendar
set DateTableName 	= 'Facts';
// Name of Date Field		
set DateFieldName 	= '%OrderDate';
set CalendarName 	= 'OrderCalendar';
set calSubfix 		= ''; 
set createFiscal 	= 'true';			
set FiscalShift 	= 7;
$(Must_Include=$(incPath)MasterCalendarV2.qvs);

// OnTop add Shipment Calendar
set DateTableName 	= 'Facts';
// Name of Date Field		
set DateFieldName 	= '%ShipmentDate';
set CalendarName 	= 'ShipmentCalendar';
set calSubfix 		= '.Shipment'; 
set createFiscal 	= 'true';			
set FiscalShift 	= 7;
$(Must_Include=$(incPath)MasterCalendarV2.qvs);

Reiter #do@End

// Rename Fields
$(Must_Include=$(incPath)RenameFields.qvs);
// Export Data
$(Must_Include=$(incPath)exportData.qvs);
// Delete Vars
$(Must_Include=$(incPath)ResetVars.qvs);

Reiter Exit

Für das Einschränken der Tabellen welche ausgeführt werden sollen.

Exit Script;

 

 

Workflow

Stage 1:

  1. Erstellen Sie ein Kopie der Framework.qvf und benennen Sie diese nach Ihrem Projekt
  2. Konfigurieren Sie die MainVarsDefinition passend zu Ihren Daten.
  3. Nutzen Sie das Tab Qualify um im Bereich UnQualify Ihre Schlüsselfelder zum Aufbau des Datenmodells anzugeben.
  4. Laden Sie Ihre Daten
  5. Lösen Sie ggf. Schlüsselfeldprobleme siehe CookBook Development
  6. Gehen Sie in App-Übersicht dort finden Sie ein Arbeitsblatt der Feldnamen ($Table $Field) exportieren Sie diese nach Excell
  7. Ziehen Sie die gesamte Spalte nach rechts (kopieren)
  8. ggf. nach *ID Filter und allen ID Feldern ein % Zeichen voranstellen
  9. Nennen Sie Tabelle Aliase und kopieren Sie diese in die Framework.xls  (Arbeitsblatt Aliase) – damit Kapseln wir unsere weiteren Stages von der Datenbank.
  10. Stellen Sie den RenameType auf „Aliase“
  11. Geben Sie eine Exportdestination an und exportType qvd
  12. Laden Sie erneut die Daten um die Daten mit den AliasNamen in entsprechende QVD-Dateien zu exportieren.

Stage 2:

  1. Erstellen Sie ein Kopie der Framework.qvf und benennen Sie diese nach Ihrem Projekt
  2. MainVars setzten
  3. ggf. Hilftabellen laden
  4. Importieren Sie die benötigten QVD Dateien für Ihr Projekt aus Stage 2
  5. Führen Sie diese ggf. mit join oder Mappings zusammen (siehe CookBook)
  6. Führen Sie Ihre Berechnungen inklusive Formatierungen durch
  7. Aggregieren Sie diese ggf.
  8. Erstellen Sie mit MasterCalendarV2.qvs Ihre Kalender
  9. Exportieren Sie erneut Ihre Tabellen in QVD Dateien

Stage 3 Teil 1:

  1. Aliasnamen von Stage 1 nach FieldNames kopieren und übersetzen
  2. BI-Governance erstellen (siehe Beispiel in der Framework.xls) 
  3. Erstellen Sie ein Kopie der Framework.qvf und benennen Sie diese nach Ihrem Projekt
  4. MainVars setzten
  5. FieldLanguage setzten
  6. BI-Governance-Master einkommentierten
  7. GUI-Languages einkommentierten
  8. RenameType auf Translate setzen
  9. Ihre App wird nun in der gesetzten Sprache erstellt, sprich die Feldnamen werden übersetzt und es wird die Sprache als Standardsprache für die Oberfläche gesetzt.
  10. Erstellen Sie Ihre MasterItems wie in der Beispielapp nutzen Sie für Label etc. den Index (MineString() Funktion) ihrer GUI-Languages Tabelle und für Formeln die entsprechenden Variablen aus der BI-Governance
  11. Erstellen Sie Ihre Diagramme nutzen Sie auch dort für Titel / Label etc. wie oben den Index aus der GUI-Language Datei
  12. Sie sind fertig und wollen die nächste Sprache

Stage 3 Teil 2:

  1. Erstellen Sie eine Kopie der Stage 3 – DE und nennen Sie diese Stage 3 – US
  2. setzten Sie den RenameType auf „FromTo“
  3. setzen Sie die Variable renameFrom auf DE
  4. und die Variable renameTo auf US
  5. Führen Sie einen Reload durch – Fertig