Ograniczenie dostępu do systemu plików
Ze względów bezpieczeństwa Qlik Sense w trybie standardowym nie obsługuje ścieżek w skrypcie ładowania danych, podobnie jak funkcji ani zmiennych ujawniających informacje o systemie plików.
Ponieważ jednak ścieżki systemu plików były obsługiwane w QlikView, można jednak wyłączyć tryb standardowy i używać trybu zgodności w celu korzystania z istniejących skryptów ładowania QlikView.
Wyłączanie trybu standardowego
Kwestie bezpieczeństwa związane z połączeniami do danych ODBC i OLE DB w plikach
Nawiązywanie połączeń do danych ODBC i OLE DB z wykorzystaniem sterowników plikowych powoduje ujawnienie ścieżki do połączonego pliku danych w ciągu połączenia. Ścieżka ta może być ujawniona podczas edytowania połączenia, w oknie dialogowym selekcji danych lub w określonym zapytaniu SQL. Dotyczy to zarówno trybu standardowego, jak i trybu zgodności.
Ograniczenia trybu standardowego
Niektóre instrukcje, zmienne i funkcje są w trybie standardowym niedostępne lub dostępne w ograniczonym zakresie. Użycie nieobsługiwanej instrukcji w skrypcie ładowania danych spowoduje błąd przy wykonywaniu skryptu ładowania. Komunikaty o błędach można znaleźć w pliku dziennika skryptu. Użycie nieobsługiwanej zmiennej lub funkcji nie jest sygnalizowane żadnym komunikatem o błędzie ani wpisem w pliku dziennika. Funkcja zwróci jedynie wartość NULL.
Podczas edytowania skryptu ładowania danych nie są wyświetlane żadne informacje o użyciu nieobsługiwanej zmiennej, instrukcji lub funkcji.
Zmienne systemowe
| Zmienna | Tryb standardowy | Tryb zgodności | Definicja |
|---|---|---|---|
| Floppy |
Nieobsługiwane |
Obsługiwane | Zwraca literę napędu pierwszego znalezionego napędu dyskietek (zwykle jest to a:). |
| CD |
Nieobsługiwane |
Obsługiwane | Zwraca literę napędu pierwszego znalezionego napędu CD-ROM. Jeśli żaden napęd CD-ROM nie zostanie znaleziony, wówczas zostanie zwrócona litera c:. |
| QvPath |
Nieobsługiwane |
Obsługiwane | Zwraca ciąg przeglądania ścieżki pliku wykonywalnego Qlik Sense. |
| QvRoot |
Nieobsługiwane |
Obsługiwane | Zwraca katalog główny pliku wykonywalnego programu Qlik Sense. |
| QvWorkPath |
Nieobsługiwane |
Obsługiwane | Zwraca ciąg znaków przeglądania do bieżącej aplikacji Qlik Sense. |
| QvWorkRoot |
Nieobsługiwane |
Obsługiwane | Zwraca katalog główny bieżącej aplikacji Qlik Sense. |
| WinPath |
Nieobsługiwane |
Obsługiwane | Zwraca ciąg znaków przeglądania do systemu Windows. |
| WinRoot |
Nieobsługiwane |
Obsługiwane | Zwraca katalog główny systemu Windows. |
| $(include=...) | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Zmienna Include/Must_Include określa plik, który zawiera tekst, jaki powinien zostać umieszczony w skrypcie i oceniony jako kod skryptu. Nie służy do dodawania danych. Można przechowywać części kodu skryptu w oddzielnym pliku tekstowym i używać ich wielokrotnie w wielu aplikacjach. Jest to zmienna definiowana przez użytkownika. |
Zwykłe instrukcje skryptu
| Instrukcja | Tryb standardowy | Tryb zgodności | Definicja |
|---|---|---|---|
| Binary | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Instrukcja binary służy do ładowania danych z innej aplikacji. |
| Connect | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Instrukcja CONNECT służy do określania dostępu aplikacji Qlik Sense do ogólnej bazy danych przy użyciu interfejsu OLE DB/ODBC. W przypadku ODBC źródło danych najpierw należy określić za pomocą narzędzia administracyjnego ODBC. |
| Directory | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Instrukcja Directory określa, w którym katalogu należy szukać plików danych w kolejnych instrukcjach LOAD, do momentu wydania nowej instrukcji Directory. |
| Execute | Nieobsługiwane | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Instrukcja Execute służy do uruchamiania innych programów w czasie, gdy aplikacja Qlik Sense ładuje dane. Na przykład w celu wykonania niezbędnych przekształceń. |
| LOAD from ... | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Instrukcja LOAD ładuje pola z pliku, z danych zdefiniowanych w skrypcie, z wcześniej załadowanej tabeli, ze strony internetowej, z wyniku późniejszej instrukcji SELECT lub przez automatyczne wygenerowanie danych. |
| Store into ... | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Instrukcja Store tworzy plik QVD, Parquet, CSV lub TXT. |
Instrukcje sterowania skryptem
| Instrukcja | Tryb standardowy | Tryb zgodności | Definicja |
|---|---|---|---|
|
For each... filelist mask/dirlist mask |
Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką Zwracane dane wyjściowe: połączenie z biblioteką |
Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików Zwracane dane wyjściowe: Połączenie z biblioteką lub ścieżka w systemie plików w zależności od danych wejściowych |
Konstrukcja filelist mask tworzy rozdzieloną przecinkami listę wszystkich plików w bieżącym katalogu zgodnych z filelist mask. Konstrukcja dirlist mask tworzy rozdzieloną przecinkami listę wszystkich katalogów w bieżącym katalogu zgodnych z maską nazwy katalogu. |
Funkcje pliku
| Funkcja | Tryb standardowy | Tryb zgodności | Definicja |
|---|---|---|---|
| Attribute() | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Zwraca wartość metaznaczników różnych plików multimedialnych w postaci tekstu. |
| ConnectString() | Zwracane dane wyjściowe: Nazwa połączenia biblioteki | Nazwa połączenia biblioteki lub samo połączenie, zależnie od danych wejściowych | Zwraca aktywne parametry połączenia dla połączeń ODBC lub OLE DB. |
| FileDir() |
Zwracane dane wyjściowe: połączenie z biblioteką |
Zwracane dane wyjściowe: Połączenie z biblioteką lub ścieżka w systemie plików w zależności od danych wejściowych | Funkcja FileDir zwraca ciąg znaków zawierający ścieżkę do katalogu aktualnie odczytywanego pliku tabeli. |
| FilePath() |
Zwracane dane wyjściowe: połączenie z biblioteką |
Zwracane dane wyjściowe: Połączenie z biblioteką lub ścieżka w systemie plików w zależności od danych wejściowych | Funkcja FilePath zwraca ciąg znaków zawierający pełną ścieżkę do aktualnie odczytywanego pliku tabeli. |
| FileSize() |
Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką |
Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Funkcja FileSize zwraca liczbę całkowitą zawierającą rozmiar (w bajtach) pliku filename albo, jeśli nie określono parametru filename, aktualnie odczytywanego pliku tabeli. |
| FileTime() |
Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką |
Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Funkcja FileTime zwraca znacznik czasu w formacie UTC ostatniej modyfikacji określonego pliku. Jeżeli nie określono pliku, funkcja zwróci znacznik czasu w formacie UTC ostatniej modyfikacji aktualnie odczytywanego pliku tabeli. |
| GetFolderPath() |
Nieobsługiwane |
Zwracane dane wyjściowe: Ścieżka bezwzględna |
Funkcja GetFolderPath zwraca wartość funkcji Microsoft Windows SHGetFolderPath. Ta funkcja przyjmuje na wejściu nazwę folderu Microsoft Windows i zwraca pełną ścieżkę do tego folderu. |
| QvdCreateTime() | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Ta funkcja skryptu zwraca znacznik czasu z nagłówkiem XML z ewentualnego pliku QVD. W przeciwnym wypadku zwraca wartość NULL. W znaczniku czasu jest określany czas UTC. |
| QvdFieldName() | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Funkcja skryptu zwraca nazwę numeru pola (fieldno) w pliku QVD. Jeśli nie istnieje, zwracana jest wartość NULL. |
| QvdNoOfFields() | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Ta funkcja skryptu zwraca liczbę pól w pliku QVD. |
| QvdNoOfRecords() | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Ta funkcja skryptu zwraca liczbę rekordów aktualnie istniejących w pliku QVD. |
| QvdTableName() | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką | Obsługiwane dane wejściowe: Ścieżka używająca połączenia z biblioteką lub systemu plików | Ta funkcja skryptu zwraca nazwę tabeli zapisaną w pliku QVD. |
Funkcje systemowe
| Funkcja | Tryb standardowy | Tryb zgodności | Definicja |
|---|---|---|---|
| DocumentPath() |
Nieobsługiwane |
Zwracane dane wyjściowe: Ścieżka bezwzględna |
Ta funkcja zwraca ciąg znaków zawierający pełną ścieżkę do bieżącej aplikacji Qlik Sense. |
|
GetRegistryString()
|
Nieobsługiwane |
Obsługiwane | Zwraca wartość nazwanego klucza rejestru o podanej ścieżce rejestru. Funkcji tej można używać zarówno w wykresach, jak i w skryptach. |