Analyse
Letzte Aktualisierung: 14.10.2026QV2QS scannt jedes QlikView-Dokument automatisch nach Funktionen und Mustern, die nach der Migration möglicherweise Aufmerksamkeit erfordern. Einige Befunde sind informativ. Andere Ergebnisse identifizieren nicht unterstützte Funktionen oder Bereiche, die in Qlik Sense anders funktionieren. Die Ergebnisse erscheinen im Abschnitt Sonstige Feststellungen der Management-Zusammenfassung und auf dem Arbeitsblatt Analyse des Excel-Berichts.
Die Analyse ist vom Konvertierungsbericht getrennt. Der Konvertierungsbericht misst, wie gut Objekte konvertiert wurden. Die Analyse identifiziert zusätzliche Kompatibilitätsbedenken für die Qlik Cloud-Bereitstellung.
Was wird gescannt
QV2QS untersucht sieben Bereiche des QlikView-Dokuments.
Ausgeblendetes Skript
QlikView-Dokumente können ein verborgenes Ladeskript enthalten, das vor dem sichtbaren Skript ausgeführt wird. Das verborgene Skript wird in einem komprimierten Block in der QVW/QVF-Binärdatei gespeichert und ist im PRJ-Ordner nicht sichtbar. QV2QS extrahiert das verborgene Skript aus der Binärdatei und stellt es dem sichtbaren Ladeskript in script.qvs voran. Wenn ein verstecktes Skript erkannt wird, erscheint ein informativer Befund im Arbeitsblatt „Analyse“ und im Abschnitt „Sonstige Befunde“ der Zusammenfassung für Führungskräfte.
Skriptmuster laden
QV2QS durchsucht das Ladeskript (LoadScript.txt) nach Anweisungen und Funktionen, die während der Migration Aufmerksamkeit erfordern. Wenn ein ausgeblendetes Skript vorhanden ist, wird der Inhalt des ausgeblendeten Skripts in den Scan einbezogen. Einige Anweisungen werden in Qlik Sense nicht unterstützt. Andere Muster erfordern möglicherweise Pfadanpassungen oder alternative Ansätze. Ausgeschlossen vom Scannen sind Kommentarzeilen und Blockkommentare.
Die folgenden Formate werden erkannt:
| Muster | Beschreibung |
|---|---|
| Binäres Laden | BINARY-Anweisung, die Daten aus einer anderen QVW-Datei lädt. Der Ansatz zum Laden von Daten muss möglicherweise überarbeitet werden. |
| Bundle-Ladevorgang | BUNDLE- oder INFO LOAD-Anweisungen, die Bilder in die QVW einbetten. In Qlik Sense nicht unterstützt. |
| InputField | INPUTFIELD-Anweisung für die Eingabe von Benutzerdaten. In Qlik Sense nicht unterstützt. |
| Direct Discovery | DIRECT QUERY-Anweisung für Live-Datenquellenverbindungen. In Qlik Sense nicht unterstützt. |
| Einschließen | $(Include=...)- oder $(Must_Include=...)-Verweise auf externe Skriptdateien. Dateipfade müssen möglicherweise angepasst werden. |
| Befehl | COMMAND-Anweisung, die Betriebssystembefehle ausführt. In Qlik Sense nicht unterstützt. |
| Ausführen: | EXECUTE-Anweisung, die externe Programme ausführt. Wird in Qlik Cloud nicht unterstützt. |
| Image_Size | Image_Size-Funktion In Qlik Sense nicht unterstützt. |
| GetCurrentField | GetCurrentField-Funktion In Qlik Sense nicht unterstützt. |
| GetExtendedProperty | GetExtendedProperty-Funktion In Qlik Sense nicht unterstützt. |
| InputAvg / InputSum | Aggregationsfunktionen für Eingabefelder. In Qlik Sense nicht unterstützt. |
| MsgBox | MsgBox-Funktion für Dialogfelder. In Qlik Sense nicht unterstützt. |
| NoOfReports | NoOfReports-Funktion In Qlik Sense nicht unterstützt. |
| Berichtskommentar / Berichts-ID / Berichtsname / Berichtsnummer | Berichtsbezogene Funktionen. In Qlik Sense nicht unterstützt. |
Jeder Befund enthält die Zeilennummer und den Zeilentext aus dem Ladeskript.
Dokumenteigenschaften
QV2QS prüft DocProperties.xml auf Funktionen auf Dokumentebene, die Aufmerksamkeit erfordern. Einige werden in Qlik Sense nicht unterstützt. Andere werden unterstützt, erfordern jedoch eine manuelle Einrichtung oder verhalten sich anders.
| Eigenschaft | Beschreibung |
|---|---|
| Abschnittszugriff | Die Sicherheit auf Zeilenebene ist aktiviert. Qlik Sense unterstützt Abschnittszugriff, aber die Syntax unterscheidet sich. |
| Dynamische Datenaktualisierung | Die dynamische Datenaktualisierung ist aktiviert. In Qlik Sense nicht unterstützt. |
| Direct Discovery-Modus | Der Direct Query-Modus ist auf Dokumentebene aktiviert. In Qlik Sense nicht unterstützt. |
| Alarme | Es sind Alarmdefinitionen vorhanden. Alarme werden in Qlik Sense nicht unterstützt. |
| Dokument-OnOpen-Aktionen | OnOpen-Trigger-Aktionen auf Dokumentebene sind definiert. Erfordert manuelle Neuerstellung. |
| Dokument-OnPostReload-Aktionen | OnPostReload-Trigger-Aktionen auf Dokumentebene sind definiert. Erfordert manuelle Neuerstellung. |
| Dokumenterweiterungen | Dokumenterweiterungen sind installiert. Andere Erweiterungen als QVAccessibility werden nicht unterstützt. |
Feldeigenschaften
QV2QS erkennt Felder, bei denen die Eigenschaft Always One Selected aktiviert ist. Diese Eigenschaft ist eine Einstellung auf Engine-Ebene, die nicht über die JSON-Build-Ausgabe angewendet werden kann. Die Eigenschaft muss nach der Bereitstellung manuell im Qlik Sense App-Editor angewendet werden.
VBA-Makros
QV2QS liest Module.txt aus dem PRJ-Ordner und parst alle VBA-Sub- und Function-Definitionen. Für jedes Makro gibt die Analyse den Namen, den Typ (Sub oder Function) und die Zeilenanzahl an.
QV2QS erstellt außerdem Querverweise für Makroaufrufe, indem jede Objekt-XML-Datei und DocProperties.xml nach Aktionstriggern durchsucht werden, die Makros aufrufen. Der Querverweis gibt an, welche Objekte welche Makros aufrufen und auf welchen Blättern diese Objekte vorkommen. Makros, die definiert, aber nie aufgerufen werden, werden als nicht verwendet markiert.
Verwenden von Anführungszeichen für Ausdrücke in der Set-Analyse
QV2QS durchsucht alle Objektausdrücke (Dimensionen, Kennzahlen, Anzeigebedingungen, Farbausdrücke, Textausdrücke) und Variablendefinitionen nach Mustern für Anführungszeichen in der Set Analysis, die sich in Qlik Sense anders verhalten. QlikView (vor November 2017) behandelte Werte in einfachen Anführungszeichen in Set-Modifikatoren als Suchen ohne Berücksichtigung der Groß-/Kleinschreibung, identisch mit Werten in doppelten Anführungszeichen. Qlik Sense behandelt Werte in einfachen Anführungszeichen als Literale, bei denen die Groß-/Kleinschreibung beachtet wird.
Die folgenden Formate werden erkannt:
| Muster | Regel | Wahrscheinlichkeit | Beschreibung | Behebung |
|---|---|---|---|---|
Wildcard in einfachen Anführungszeichen ('*US*', 'A?', '^abc') |
Wildcard in einfachen Anführungszeichen | Hoch | Platzhalterzeichen *, ? und der Wortgrenzenanker ^ werden in Qlik Sense als Literaltext anstelle von Suchmustern interpretiert. |
Ersetzen Sie einfache Anführungszeichen durch doppelte Anführungszeichen, um das Suchverhalten wiederherzustellen. |
Vergleich in einfachen Anführungszeichen ('>=5', '<2020') |
Vergleich in einfachen Anführungszeichen | Hoch | Vergleichsoperatoren >, >=, <, <= werden in Qlik Sense als literaler Text anstelle von numerischen Suchen interpretiert. |
Ersetzen Sie einfache Anführungszeichen durch doppelte Anführungszeichen, um den numerischen Vergleich wiederherzustellen. |
Fuzzy-Suche in einfachen Anführungszeichen ('~company') |
Unscharfe Suche in einfachen Anführungszeichen | Hoch | Das Präfix ~ löst Fuzzy-Matching in doppelten Anführungszeichen aus. In einfachen Anführungszeichen behandelt Qlik Sense dies als literale Zeichenfolge. |
Ersetzen Sie einfache Anführungszeichen durch doppelte Anführungszeichen, um die Fuzzy-Suche wiederherzustellen. |
Suche nach Ausdrücken in einfachen Anführungszeichen ('=Sum(Sales)>100') |
Ausdruckssuche in einfachen Anführungszeichen | Hoch | Das Präfix = löst die Ausdruckssuche in doppelten Anführungszeichen aus. In einfachen Anführungszeichen behandelt Qlik Sense dies als literale Zeichenfolge. |
Ersetzen Sie einfache Anführungszeichen durch doppelte Anführungszeichen, um die Ausdruckssuche wiederherzustellen. |
Suchmodifikator in einfachen Anführungszeichen ('+abc', '-solution') |
Suchmodifikator in einfachen Anführungszeichen | Hoch | Die Modifikatoren + (muss enthalten) und - (darf nicht enthalten) funktionieren in doppelten Anführungszeichen. In einfachen Anführungszeichen behandelt Qlik Sense sie als Literal-Zeichenfolgen. |
Ersetzen Sie einfache Anführungszeichen durch doppelte Anführungszeichen, um das Verhalten des Modifikators wiederherzustellen. |
Zusammengesetzte Suche in einfachen Anführungszeichen ('(1|2|3)', '(*ABC*&?*Inc*)') |
Zusammengesetzte Suche in einfachen Anführungszeichen | Hoch | Die zusammengesetzte Suche mit den logischen Operatoren | (ODER), & (UND), ^ (XOR) funktioniert in doppelten Anführungszeichen. In einfachen Anführungszeichen behandelt Qlik Sense dies als literale Zeichenfolge. |
Ersetzen Sie einfache Anführungszeichen durch doppelte Anführungszeichen, um die zusammengesetzte Suche wiederherzustellen. |
Wert in einfachen Anführungszeichen in einem numerischen Feld ('2020' in einem Datums- oder Zahlenfeld) |
Einfache Anführungszeichen bei numerischem Feld | Hoch | Werte in einfachen Anführungszeichen entsprechen der Textdarstellung in Qlik Sense. Bei numerischen oder dualen Feldern stimmt die Textdarstellung möglicherweise nicht mit dem gespeicherten Wert überein, was zu einem Typenkonflikt führt. | Verwenden Sie stattdessen den numerischen Wert ohne Anführungszeichen oder doppelte Anführungszeichen. |
Nicht in Anführungszeichen gesetzter Bare-String ({USA,France}) |
Einfacher Wert ohne Anführungszeichen | Niedrig | Qlik Sense akzeptiert Werte ohne Anführungszeichen, aber das Verhalten ist bei Leerzeichen, Operatoren oder Sonderzeichen fehleranfällig. | Setzen Sie den Wert für eine wörtliche Übereinstimmung in einfache Anführungszeichen. |
Bloße Feldreferenz (<Field1=Field2>) |
Bloße Feldreferenz | Hoch | QlikView ermöglicht es <Field1=Field2>, Auswahlen zwischen Feldern zu übertragen. Qlik Sense unterstützt keine bloßen Feld-zu-Feld-Referenzen in Set-Modifikatoren. |
Ersetzen Sie durch <Field1=P(Field2)>, um die Elementfunktion P() zu verwenden. |
Bloßer Wert ohne geschweifte Klammern (<Country=USA>) |
Bloßer Wert ohne geschweifte Klammern | Hoch | Ein bloßer Wert ohne geschweifte Klammern auf der rechten Seite einer Set-Modifikator-Zuweisung. QlikView interpretiert den Wert je nach Kontext möglicherweise als Literal oder als Feldreferenz. Qlik Sense erfordert, dass Werte in geschweiften Klammern stehen. | In geschweifte Klammern setzen: <Country={USA}> oder <Country={'USA'}>. |
In einfache Anführungszeichen gesetzte Nur-Text-Werte in Textfeldern (z. B. 'USA') werden nicht markiert. Diese Werte funktionieren in Qlik Sense ordnungsgemäß als Literale mit Berücksichtigung der Groß-/Kleinschreibung.
QV2QS unterstützt in eckige Klammern gesetzte ([Invoice Number]), in doppelte Anführungszeichen gesetzte ("Invoice Number") und in Gravis-Zeichen gesetzte (`Invoice Number`) Feldnamen auf der linken Seite von Set-Modifier-Zuweisungen. Alle drei Anführungsstile werden beim Scannen und Beheben erkannt.
Standardmäßig korrigiert QV2QS während der Konvertierung automatisch Suchwerte in einfachen Anführungszeichen in Objektausdrücken und Variablendefinitionen. Werte in einfachen Anführungszeichen, die Suchsyntax (Platzhalter, Vergleiche, Fuzzy-Suche, Ausdruckssuche, Suchmodifikatoren oder zusammengesetzte Suchoperatoren) enthalten, werden in doppelte Anführungszeichen konvertiert. Werte in einfachen Anführungszeichen in numerischen Feldern, die keine Suchsyntax enthalten, werden für die manuelle Überprüfung markiert, aber nicht automatisch korrigiert. Ein experimenteller Fix für nicht in Anführungszeichen gesetzte Bare-String-Werte ist ebenfalls verfügbar, standardmäßig jedoch deaktiviert – übergeben Sie --fixUnquotedSetValues, um ihn zu aktivieren. Korrekturen werden ausschließlich mittels positionsbasierter Ersetzung innerhalb von Wertelisten für Set-Modifikatoren angewendet – Feldnamen, Funktionsnamen und sonstiger Ausdruckstext werden niemals geändert. Jeder Fix verfügt über einen unabhängigen Umschalter (--noFixSingleQuotedSearch, --fixUnquotedSetValues). Weitere Informationen finden Sie unter Argumentreferenz.
Die Ergebnisse werden im Abschnitt Expression quoting findings der Konsolenzusammenfassung, auf der Unterregisterkarte Expression des Executive-Summary-Dashboards und im Arbeitsblatt Expression_Findings des Excel-Berichts angezeigt. Jeder Befund enthält einen Status-Indikator: Automatisch behoben (während der Konvertierung korrigiert), Überprüfung erforderlich (erfordert manuelle Bearbeitung) oder Keine Behebung verfügbar (nicht unterstützte Funktion). Das Executive-Summary-Dashboard bietet einen Filter-Umschalter, um automatisch behobene Zeilen auszublenden und den Fokus auf Elemente zu richten, die noch Aufmerksamkeit erfordern. Weitere Informationen zu Syntaxunterschieden bei der Set-Analysis finden Sie unter Set-Analysis in der Qlik Cloud-Hilfe.
Nicht unterstützte Diagrammfunktionen
QV2QS scannt alle Objektausdrücke (Dimensionen, Kennzahlen, Anzeigebedingungen, Farbausdrücke, Textausdrücke) und Variablendefinitionen nach QlikView-Diagrammfunktionen, die in Qlik Sense nicht unterstützt werden. Der Scanner erkennt Funktionsaufrufe mit optionalen Leerzeichen oder Zeilenumbrüchen zwischen dem Funktionsnamen und der öffnenden Klammer. Ausgeschlossen sind Funktionsnamen innerhalb von Zeichenfolgenliteralen.
Die folgenden Funktionen wurden erkannt:
| Funktion | Beschreibung |
|---|---|
| GetCurrentField | Gibt den aktiven Feldnamen im aktuellen Objekt zurück. Wird in Qlik Sense nicht unterstützt. Siehe Feldfunktionen in Qlik Cloud für unterstützte Alternativen. |
| GetExtendedProperty | Ruft Metadaten verknüpfter Objekte ab. Wird in Qlik Sense nicht unterstützt. Siehe Feldfunktionen in Qlik Cloud für unterstützte Alternativen. |
| Eingabe | Ruft vom Benutzer eingegebene Eingabefeldwerte ab. In Qlik Sense nicht unterstützt. |
| InputAvg | Berechnet den Durchschnitt der Eingabefeldwerte. In Qlik Sense nicht unterstützt. |
| InputSum | Berechnet die Summe der Eingabefeldwerte. In Qlik Sense nicht unterstützt. |
| MsgBox | Zeigt ein Dialogfeld an. In Qlik Sense nicht unterstützt. |
| NoOfReports | Gibt die Anzahl der Berichtsobjekte zurück. In Qlik Sense nicht unterstützt. |
| ReportComment | Gibt einen Berichtskommentar zurück. In Qlik Sense nicht unterstützt. |
| ReportId | Gibt eine Berichtskennung zurück. In Qlik Sense nicht unterstützt. |
| ReportName | Gibt einen Berichtsnamen zurück. In Qlik Sense nicht unterstützt. |
| ReportNumber | Gibt eine Berichtsnummer zurück. In Qlik Sense nicht unterstützt. |
Befunde zu nicht unterstützten Funktionen werden zusammen mit Befunden zu Anführungszeichen in der Set Analysis im Arbeitsblatt Expression_Findings und im Abschnitt Potenzielle Ausdrucksprobleme der Konsolenzusammenfassung angezeigt.
Entwickler-Lesezeichen
QV2QS liest DocInternals.xml und listet alle von Entwicklern erstellten Lesezeichen auf. Für jedes Lesezeichen gibt die Analyse die Feldauswahlen, den Geltungsbereich (global oder arbeitsblattspezifisch) und an, ob der Layout-Zustand gespeichert ist. Lesezeichen müssen in Qlik Sense manuell neu erstellt werden.
Lesezeichen auf Serverebene (freigegebene und private) sind über den PRJ-Ordner nicht erkennbar.
SaaS-Dimensionierung
QV2QS liest die QVW-Binärdatei, um den Basis-RAM-Bedarf der App zu schätzen. Die Schätzung basiert auf ByteSize-Metadaten, die in Tabellen- und Feldbeschreibungen eingebettet sind.
ByteSize-Metadaten sind nur in QVW-Dateien verfügbar, die mit QlikView 12.30 oder höher (November 2018) gespeichert wurden. Wenn die Metadaten nicht vorhanden sind, wird die Sizing-Stufe als Unknown gemeldet.
QV2QS stuft die App basierend auf dem Basis-RAM-Bedarf in eine der folgenden Stufen ein.
| Stufe | Schwellenwert | Aktion |
|---|---|---|
| Standard | Bis 5 GB | Keine besondere Aktion erforderlich. |
| Große Apps | Bis 50 GB | In einem Space mit aktivierter Unterstützung für große Apps bereitstellen. |
| Erfordert Optimierung | Über 50 GB | Wenden Sie sich vor der Migration an einen Qlik-Administrator oder Qlik-Partner. |
Die Tabelle mit den Größenangaben im Arbeitsblatt „Analyse“ gibt auch die Anzahl der Tabellen und Felder an (ohne Systemtabellen und -felder). Detaillierte Informationen zu Feldkardinalität, Tabellenzeilenanzahl und Bytegrößen pro Objekt finden Sie in den Arbeitsblättern Data_Model_Fields und Data_Model_Tables im Excel-Bericht.
Konfidenzniveaus
Jeder Ladeskript-Befund enthält ein Konfidenzniveau, das die Wahrscheinlichkeit eines tatsächlichen Kompatibilitätsproblems angibt.
- Hoch — Das Muster ist spezifisch. Der Befund ist sehr wahrscheinlich ein tatsächliches Kompatibilitätsproblem.
- Mittel — Das Muster stimmt möglicherweise mit nicht relevantem Code überein. Manuell überprüfen.
- Niedrig — Das Muster ist weit gefasst. Überprüfen Sie die markierte Zeile, um die Relevanz zu bestätigen.
Befunde zu Dokumenteigenschaften und Makro-Befunde weisen keine Konfidenzniveaus auf, da diese Befunde auf expliziten XML-Flags und nicht auf Musterabgleich basieren.
Einschränkungen der Analyse
Die Analyse scannt nur den PRJ-Ordner und die QVW-Binärdatei. Der Ladeskript-Scanner erkennt nicht unterstützte Anweisungen und Funktionen in LoadScript.txt. Der Ladeskript-Scanner überprüft keine Diagrammausdrücke.
Der Ausdrucksscanner prüft Diagrammausdrücke (Dimensionen, Kennzahlen, Anzeigebedingungen, Farbausdrücke, Textausdrücke und Variablendefinitionen) auf Set-Analysis-Anführungszeichenmuster und nicht unterstützte Funktionsaufrufe. Der Ausdrucksscanner erkennt keine anderen Kategorien von Inkompatibilität in Diagrammausdrücken.
Elemente, die auf der QlikView Server-Ebene vorhanden sind, werden nicht erkannt. Zu den nicht erkannten Elementen gehören Server-Lesezeichen, Server-Objekte, Cluster-Einstellungen, Alarmbedingungen, Berichtsdefinitionen und Sitzungsnutzungsdaten.