Jak AI może odczytywać wskaźniki z Qlik Sense, tłumaczyć zmiany i pilnować odświeżeń?
Qlik Sense ma dwa API: Engine API do wartości wskaźników i QRS API do statusów odświeżeń. AI podpięte do nich odpowiada na pytania o wyniki i wykrywa padnięte zadania reload.
Qlik Sense ma dwa API, przez które można wyciągnąć wartości wskaźników i sprawdzić status zadań przeładowania: Engine API (WebSocket, JSON-RPC) do danych z aplikacji oraz Repository Service API (REST) do zarządzania zadaniami i metadanymi. AI podpięte do tych punktów wejścia odpowiada na pytania o wyniki zwykłym językiem, tłumaczy odchylenia i wysyła alert, gdy nocne odświeżenie padnie zanim ktokolwiek przyjdzie do biura. Nie potrzeba do tego kolejnego raportu ani osobnego narzędzia.
Co naprawdę siedzi w Qlik Sense i co z tego wyciągamy?
Qlik Sense organizuje dane w aplikacje (apps). Każda aplikacja to osobny plik z modelem danych, skryptem ładowania i zestawem arkuszy (sheets). Na arkuszach siedzą obiekty: wykresy, tabele, filtry i obiekty KPI. Te ostatnie to te pojedyncze liczby na dashboardzie: "Przychód MTD", "Marża brutto", "Zapasy w dniach". Pod każdym z nich jest wyrażenie, np. =Sum({$<[Rok]={2026},[Miesiąc]={5}>}[Wartość netto]). Ktoś to kiedyś napisał, przetestował i zakopał głęboko w aplikacji.
Oprócz samych wartości Qlik Sense trzyma kilka rzeczy przydatnych dla AI:
- Master Measures (miary wzorcowe): definicje wskaźników wielokrotnego użytku, z nazwą, opisem i wyrażeniem. To tam ktoś nazwał "marżę kontraktową", "obrót zapasów" i "termin płatności". Te nazwy AI może dostać razem z wartościami.
- Reload Tasks (zadania przeładowania): każde ma nazwę, harmonogram, historię uruchomień i pole lastExecutionResult ze statusem: Success (kod 5), Failed (2), InProgress (6), Error (7) i kilka innych. Plus startTime, stopTime i czytelny komunikat błędu, gdy coś padnie.
- App metadata: data ostatniego przeładowania (lastReloadTime), właściciel, stream (folder grupujący aplikacje), rozmiar pliku aplikacji.
- Data Connections: nazwy i typy połączeń ze źródłami: SQL Server, Oracle, plik CSV na udziale sieciowym, QVD.
Typowo firma ma kilka aplikacji w Qlik Sense: sprzedażowa, finansowa, logistyczna. Każda po kilkadziesiąt wskaźników. Nikt ich wszystkich nie śledzi na co dzień. Ale jak coś siada, pytania pojawiają się na zebraniu, często za późno.
Jak fizycznie wygląda podłączenie: API, klucze i uprawnienia
Qlik Sense występuje w dwóch wersjach i to decyduje o sposobie autoryzacji. Zanim cokolwiek wpinamy, trzeba wiedzieć, z którą wersją macie do czynienia.
Qlik Cloud (SaaS) to wersja hostowana przez Qlik. Podpięcie jest stosunkowo proste. Administrator generuje klucz API w ustawieniach dzierżawcy (tenant settings), wynik to Bearer token dołączany do każdego zapytania. Przez ten token integracja trafia do endpointu https://[tenant].us.qlikcloud.com/api/v1/ i może listować aplikacje, sprawdzać zadania reload, pobierać metadane. Do samych wartości wskaźników z aplikacji łączymy się przez Engine API na WebSocket, z tym samym tokenem. Jedno konto serwisowe, jeden klucz, dwa API.
Qlik Sense Enterprise on-Windows (QSEoW) to wersja instalowana na własnych serwerach lub w chmurze prywatnej. Tu jest trudniej. Repository Service API (QRS) działa na porcie 4242 i wymaga certyfikatu klienta w formacie PEM, wyeksportowanego z Qlik Management Console (QMC). Bez tego certyfikatu żaden zewnętrzny program się nie połączy: port po prostu odrzuci połączenie. Engine API na WebSocket działa na porcie 4747, też z certyfikatem. Konto serwisowe musi mieć w QMC przypisaną rolę przynajmniej RootAdmin albo precyzyjnie skonfigurowaną rolę niestandardową z dostępem do konkretnych streamów. Certyfikat klienta ma termin ważności i to on najczęściej psuje integracje po kilku miesiącach ciszy.
Co API daje, a czego nie:
- Daje: wartości wskaźników przez wywołanie wyrażenia lub definicję hypercube, lista zadań reload ze statusami i komunikatami błędów, lista aplikacji i miar wzorcowych z ich opisami, daty ostatnich przeładowań, właściciele i streamy.
- Nie daje bez konfiguracji: dostępu do danych chronionych przez Section Access, jeśli konto serwisowe nie ma tych uprawnień, ani historii wartości wskaźnika w czasie, jeśli model danych aplikacji jej nie trzyma.
To ostatnie ograniczenie jest ważne przed podpięciem integracji. API powie Wam, że dziś marża wynosi 23%. Nie powie, że trzy tygodnie temu wynosiła 26%, jeśli aplikacja Qlik nie trzyma tych danych historycznych w swoim modelu. To architektura danych, nie wada API.
W praktyce tworzymy konto serwisowe z prawami wyłącznie do odczytu wybranych streamów. W QMC można to precyzyjnie ograniczyć: integracja widzi tylko aplikacje z danego strumienia, nie ma dostępu do QMC ani do innych aplikacji. Podpięcie AI nie wymaga uprawnień administratora na co dzień.
Co AI odczytuje z aplikacji Qlik i jak to wygląda od środka
Przez Engine API AI łączy się z konkretną aplikacją jako sesja. Następnie wywołuje wyrażenie albo definiuje hypercube: wirtualną tabelę z wymiarami i miarami. Qlik Sense odsyła liczby w JSON-ie. Zapytanie wygląda: "daj mi wartość miary o ID xyz dla bieżącego miesiąca". Odpowiedź: {"qValue": 1842340.5}. Sucha liczba w JSON-ie. Resztę robi AI: kontekst, interpretacja, zdanie po polsku.
Z QRS API AI odczytuje stan zadań reload. Każde zadanie ma pole lastExecutionResult z kodem statusu, czasem startu i stopu oraz treścią komunikatu błędu. To wystarczy, żeby wiedzieć: które zadania padły tej nocy, które trwały dużo dłużej niż zwykle, które nie ruszyły w ogóle od ostatniej zmiany harmonogramu.
Konkretnie: firma ma osiem zadań reload, które odpalają się o 3:00 w nocy. AI sprawdza o 7:00 rano, przed otwarciem biura. Trzy zadania mają status Success, jedno Failed z komunikatem "ODBC driver connection timeout", cztery jeszcze InProgress. AI wysyła wiadomość przez Teams do analityka: "Zadanie 'Sales Daily Reload' padło o 3:47, komunikat: connection timeout. Cztery zadania jeszcze trwają, sprawdź harmonogram." Analityk wie o tym zanim pójdzie po kawę, nie na zebraniu o 10:00.
Co AI robi z tymi danymi dla Waszej firmy
Wyciągnięcie liczby to dopiero połowa. Wartość sama w sobie niewiele mówi. Wartość w kontekście mówi dużo więcej.
Odpowiedzi na pytania zwykłym językiem. Handlowiec pyta przez czat albo Teams: "Jaka jest teraz marża na kategorii X za ten miesiąc?" AI odpytuje Engine API w tle, dostaje liczbę i odpowiada zdaniem. Nie trzeba otwierać Qlik Sense, szukać arkusza, ustawiać filtrów. Pytanie można zadać przez czat firmowy, przez Teams, przez formularz na intranecie. Odpowiedź dostaje się w kilka sekund.
Tłumaczenie odchyleń. Jeśli aplikacja trzyma dane z kilku okresów, AI porównuje wartość bieżącą z poprzednią i formułuje hipotezę: "Marża w maju jest niżej niż w kwietniu. W danych widzę wzrost wolumenu przy prawie tej samej wartości sprzedaży, co może wskazywać na zmianę miksu produktowego albo wyższy udział kategorii z niższą marżą." To nie wróżenie ze szklanej kuli. To porównanie liczb, które Qlik ma w sobie, opisane słowami. Jakość tego opisu zależy od tego, jak dobrze zbudowana jest aplikacja Qlik: nazwy miar, opisy, podział na kategorie.
Komentarz do raportu miesięcznego. Na koniec miesiąca AI pobiera z aplikacji finansowej wartości: przychody, marża operacyjna, należności przeterminowane, poziom zapasów, obrót kapitału. Porównuje z poprzednim miesiącem i generuje krótki akapit, który analityk wkleja do prezentacji dla zarządu. Sprawdza i ewentualnie poprawia ton lub dopisuje kontekst, którego w danych nie ma. Zamiast pisać ten komentarz przez 20-30 minut, AI robi to w kilkanaście sekund. Człowiek zostaje przy weryfikacji, nie przy przepisywaniu liczb w zdania.
Alert przy nieudanych odświeżeniach. Qlik Sense może wysyłać maile przy błędach, ale domyślnie tylko do adminów skonfigurowanych w QMC. AI podpięte do QRS API sprawdza statusy zadań co kilka godzin i wysyła powiadomienie do właściwych osób: przy padnięciu zadania sprzedażowego dostaje wiadomość analityk sprzedaży, nie administrator IT. I wie o tym zanim przyjdzie do biura, nie w trakcie prezentacji.
Konkretna sytuacja z biura: raport działa, ale dane mają dwa dni
U jednego klienta aplikacja Qlik z marżami z pięciu magazynów odświeżała się o 2:00 w nocy. Przez trzy tygodnie jedno zadanie padało co trzecia noc. Połączenie z SQL Serverem wysypywało się przy nocnych backupach, które blokowały tabele na kilkanaście minut. Administrator Qlik był na urlopie. Nikt inny nie zaglądał do QMC, bo po co, skoro "wszystko działa".
Na zebraniu zarządu kierownik logistyki prezentował liczby ze środy, choć zebranie było w piątek. W połowie prezentacji ktoś zauważył rozbieżność z danymi z ERP. Zaczęło się szukanie. Dwie godziny straconego czasu menedżerów, zanim ktoś w końcu otworzył QMC i zobaczył czerwone ikony przy zadaniach.
Po podpięciu AI do QRS API: każdy ranek o 7:00 AI sprawdza status wszystkich zadań reload. Przy kodzie Failed lub Error wysyła wiadomość przez Teams do analityka danych: nazwa zadania, czas padnięcia, komunikat błędu. Jak zebranie jest o 9:00, błąd jest znany o 7:05. Jest czas na ręczne przeładowanie albo info do zarządu, że dane są sprzed poprzedniego dnia. Małe narzędzie, ale kończy pewien typ problemów.
Od czego zacząć, żeby to działało?
Podłączenie AI do Qlik Sense to nie projekt na miesiące, ale wymaga konkretnych kroków i osoby, która zna API Qlika albo jest gotowa przez nie przejść. Dobre miejsce na start to lista pięciu rzeczy do sprawdzenia:
- Sprawdźcie wersję. Qlik Cloud albo QSEoW na własnym serwerze. Od tego zależy metoda autoryzacji i gdzie szukać certyfikatu lub klucza API.
- Wyznaczcie konto serwisowe. W Qlik Cloud: nowy użytkownik z prawami do odczytu wybranych streamów. W QSEoW: wyeksportujcie certyfikat PEM z QMC dla dedykowanego konta, z dostępem do konkretnych streamów, bez uprawnień do zarządzania QMC.
- Zróbcie listę zadań reload. Nazwy, ID aplikacji, dopuszczalne okno opóźnienia. To podstawa monitora odświeżeń i najszybszy punkt startowy.
- Ustalcie, które wskaźniki mają trafiać do AI. Nazwy miar wzorcowych z Master Items, ID aplikacji i arkuszy, za jakie okresy ma być wartość.
- Zacznijcie od monitora odświeżeń. To najprostszy krok, daje efekt od razu i nie wymaga zagłębiania się w Engine API. Pełne odpowiadanie na pytania o dane wymaga mapowania wyrażeń i testowania, jak aplikacja Qlik reaguje na różne konfiguracje hypercube.
Mamy za sobą kilka takich podpięć. Wiemy, gdzie leżą pułapki przy QSEoW z niestandardowym Section Access, gdzie certyfikaty wygasają w złym momencie i gdzie API Qlik Cloud zachowuje się inaczej, niż sugeruje dokumentacja. Jeśli chcecie sprawdzić, jak wyglądałoby to u Was: 15 minut rozmowy wystarczy, żeby ocenić wersję Qlika, listę aplikacji i realistyczny zakres. Albo najpierw przejrzyjcie realne wdrożenia.
Chcecie to u siebie?
Na osobnej stronie rozpisaliśmy, co dokładnie podłączamy w Qlik Sense, o co możecie wtedy pytać asystenta i ile kosztuje wdrożenie.
Co podłączamy i ile to kosztuje →Najczęstsze pytania
Czy Qlik Sense ma otwarte API, przez które można podłączyć zewnętrzny system albo AI?
Tak. Qlik Cloud udostępnia REST API z kluczem Bearer generowanym w ustawieniach dzierżawcy. Wersja on-premises (QSEoW) działa przez Repository Service API na porcie 4242 z certyfikatem PEM i przez Engine API na WebSocket na porcie 4747. Oba pozwalają czytać wartości wskaźników i sprawdzać status zadań reload.
Qlik Sense nie wysyła alertu o nieudanym odświeżeniu do analityków, tylko do adminów. Jak to naprawić?
Przez QRS API można odpytywać statusy wszystkich zadań reload i na podstawie pola lastExecutionResult wysyłać powiadomienie do dowolnych osób. AI robi to automatycznie rano przed otwarciem biura, zanim ktokolwiek otworzy dashboard z przestarzałymi danymi i pójdzie na zebranie.
Czy AI może odpowiadać na pytania o dane z Qlik Sense przez Teams albo czat firmowy?
Tak. AI odpytuje Engine API w tle, pobiera wartość wyrażenia lub wskaźnika i odpowiada zdaniem przez wybrany kanał. Użytkownik nie musi otwierać Qlik Sense, szukać właściwego arkusza ani ustawiać filtrów.
Jak AI może wyjaśnić, dlaczego wskaźnik w Qlik Sense się zmienił?
AI porównuje wartość bieżącą z wartością z poprzedniego okresu, jeśli model danych aplikacji je przechowuje, i formułuje hipotezę opartą na dostępnych liczbach. Jakość wyjaśnienia zależy od tego, jak dobrze zbudowana jest aplikacja: czy miary są nazwane, czy są podziały na kategorie i czy historyczne okresy są w danych.
Czy można generować automatyczny komentarz tekstowy do miesięcznego raportu z Qlik Sense?
Tak. AI pobiera wartości wybranych wskaźników z aplikacji przez Engine API, porównuje z poprzednim miesiącem i generuje krótki akapit. Analityk sprawdza i wkleja do prezentacji dla zarządu. Zamiast pisać ten komentarz ręcznie, robi to AI w kilkanaście sekund.
Opracowanie: zespół redAi z wykorzystaniem narzędzi AI.
Podłączymy Qlik Sense do AI u Was
15 minut rozmowy: mówicie, czego szukacie w danych, my mówimy, co wyciągniemy z Qlik Sense, ile to potrwa i czego potrzebujemy po Waszej stronie.
- Bezpłatna prezentacjaAI na Waszych zadaniach, nie na slajdach.
- Dostęp tego samego dniaZespół od razu pracuje we własnym portalu.
- Do 2 tygodni testówPłacicie dopiero po decyzji.


