StudioSystem

Automatyczny eksport XLSX w usłudze SSJob

Automatyczny eksport danych do pliku XLSX: definicja w tabeli x_skorowidze, konfiguracja zadania SSJob i struktura wynikowego arkusza.

studiosystem.softwarestudio.com.pl/transakcje/
Menu modułu Administrator w StudioSystem z pozycją Skorowidze
Menu modułu Administrator w StudioSystem z pozycją Skorowidze
W skrócie

Eksport XLSX to zadanie cykliczne usługi SSJob, generujące plik arkusza kalkulacyjnego na podstawie zdefiniowanego wcześniej źródła danych StudioSystem. Definicję eksportu przechowuje uniwersalna tabela rejestrowa x_skorowidze, a samo zadanie konfiguruje się jak większość zadań tej rodziny - wierszem w tabeli _jobs.

Czym jest eksport XLSX

Eksport XLSX to zadanie automatyzujące czynność, którą użytkownicy StudioSystem regularnie wykonują ręcznie - przygotowanie zestawienia danych w formacie arkusza kalkulacyjnego, gotowego do dalszej analizy, przesłania kontrahentowi albo zaimportowania do innego systemu. Zamiast każdorazowo eksportować dane z poziomu interfejsu, zadanie SSJob wykonuje tę czynność cyklicznie i bez udziału człowieka.

Mechanizm ten, podobnie jak synchronizacja HelpDesk, korzysta z pola PARAMETRY wskazującego nazwaną konfigurację zapisaną w osobnej tabeli, zamiast przechowywać wszystkie szczegóły bezpośrednio w wierszu zadania - dzięki temu jedna definicja eksportu może być wykorzystywana przez wiele zadań o różnym harmonogramie.

To podejście - oddzielenie definicji od samego zadania cyklicznego - powtarza się w kilku miejscach usługi SSJob, obok wspomnianej synchronizacji HelpDesk również przy weryfikacji kopii konfiguracji MikroTik odwołującej się do osobnej ewidencji backupów. Za każdym razem chodzi o tę samą zasadę - zadanie w tabeli _jobs odpowiada wyłącznie za harmonogram i powiadomienia, a właściwa logika biznesowa mieszka w dedykowanej strukturze danych, do której to zadanie się odwołuje.

Definicja eksportu w tabeli x_skorowidze

Tabela x_skorowidze to uniwersalny rejestr konfiguracji wykorzystywany w wielu miejscach platformy StudioSystem do różnych celów - identyfikowanych kolumną PRX, określającą typ przechowywanej konfiguracji. Dla definicji eksportu do formatu XLSX odpowiednie wiersze oznaczone są wartością PRX='XLSX', analogicznie do konfiguracji skrzynek pocztowych oznaczanych wartością PRX='KEML', opisanej przy okazji ogólnego mechanizmu usługi SSJob.

Takie podejście - jedna uniwersalna tabela rejestrowa obsługująca wiele niepowiązanych ze sobą typów konfiguracji - pozwala uniknąć mnożenia odrębnych tabel konfiguracyjnych dla każdej nowej funkcji platformy, kosztem konieczności filtrowania rekordów po kolumnie PRX przy każdym odczycie. Dla administratora oznacza to jedno miejsce do przejrzenia wszystkich zdefiniowanych w systemie konfiguracji, niezależnie od tego, czy dotyczą one eksportu danych, kont pocztowych czy jeszcze innych mechanizmów platformy, zamiast konieczności pamiętania, w której z wielu osobnych tabel szukać konkretnego ustawienia.

Konfiguracja w tabeli _jobs

Sam wiersz zadania w tabeli _jobs korzysta ze znanego z pozostałych zadań zestawu pól, uzupełnionego o pole wskazujące konkretną definicję eksportu:

PoleZnaczenie
OSTATNIOWYKONANOData ostatniego poprawnego wykonania zadania
CYKLICZNOSCLiczbowy interwał, co jaki zadanie jest uruchamiane
CYKLICZNOSCTYPEJednostka interwału - np. minuty, godziny, dni
MAILPOWIADOMIENIEAdresy e-mail, na które trafią powiadomienia o wykonaniu zadania
CONECTIONSTRINGNAMEŁańcuch połączeniowy wskazujący bazę danych StudioSystem
PARAMETRYWskazanie definicji eksportu z tabeli x_skorowidze, gdzie PRX='XLSX'

Dzięki takiemu podziałowi ról administrator może stworzyć wiele zadań eksportu, każde korzystające z innej definicji zapisanej w x_skorowidze i uruchamiane według własnego, niezależnego harmonogramu.

StudioSystem

Gotowy arkusz bez ręcznej pracy

Cykliczny eksport XLSX dostarcza aktualny arkusz danych dokładnie wtedy, gdy jest potrzebny, bez angażowania użytkownika.

Zestawienia jako źródło danych

Definicja eksportu XLSX może korzystać z tego samego mechanizmu zestawień danych, który obsługuje standardowe raportowanie w StudioSystem - predefiniowanych widoków opisanych szerzej przy okazji mechanizmu raportów RDL. Zamiast budować osobny, dedykowany zestaw zapytań wyłącznie na potrzeby eksportu, definicja może wskazywać istniejące, wcześniej przygotowane i przetestowane zestawienie.

Takie podejście ma istotną praktyczną zaletę - zmiana logiki zestawienia, na przykład dodanie nowej kolumny czy korekta filtra, automatycznie odzwierciedla się zarówno w raporcie dostępnym z poziomu interfejsu, jak i w pliku generowanym cyklicznie przez zadanie eksportu, bez konieczności utrzymywania dwóch niezależnych definicji tej samej logiki biznesowej.

Dzięki temu praca zespołu odpowiedzialnego za raportowanie i praca zespołu odpowiedzialnego za integracje danych z otoczeniem faktycznie się uzupełniają, zamiast rozjeżdżać w dwóch osobnych kierunkach - obie strony korzystają z tego samego, jednego źródła prawdy o tym, jak dokładnie mają wyglądać eksportowane dane.

Typowe zastosowania

Automatyczny eksport XLSX sprawdza się wszędzie tam, gdzie dane z StudioSystem muszą regularnie trafiać poza system, w formacie wygodnym do dalszej pracy:

  • Raporty dla działu księgowości - cykliczne zestawienie dokumentów sprzedaży czy zakupu, gotowe do dalszej obróbki w arkuszu kalkulacyjnym.
  • Dane dla systemów analitycznych - regularny eksport danych operacyjnych do dalszego przetwarzania poza StudioSystem.
  • Zestawienia dla kontrahentów - okresowe przesyłanie klientowi lub dostawcy uzgodnionego zakresu danych we wspólnie akceptowanym formacie.
  • Archiwizacja stanów magazynowych - regularny zrzut stanu kartotek towarowych w określonym momencie, przydatny przy audytach i inwentaryzacjach.

We wszystkich tych przypadkach kluczową zaletą pozostaje regularność i przewidywalność - odbiorca pliku wie, że nowa wersja pojawi się zgodnie z ustalonym harmonogramem, bez potrzeby przypominania komukolwiek o ręcznym przygotowaniu zestawienia. Tam, gdzie zamiast pełnego zestawienia potrzebne jest tylko sygnalizowanie konkretnego warunku biznesowego, lepszym rozwiązaniem bywa opisany osobno raport warunkowy JEŻELI, wysyłający zwykłą wiadomość e-mail zamiast całego pliku z danymi.

Różnica względem eksportu XML

Eksport XLSX i eksport XML, dostępny jako osobne zadanie tej samej serii, korzystają z bardzo podobnego mechanizmu konfiguracyjnego opartego na tabeli _jobs i wskazaniu definicji w tabeli x_skorowidze, różniącej się jedynie wartością kolumny PRX. Różnica leży w przeznaczeniu wynikowego pliku.

Plik XLSX powstaje z myślą o bezpośrednim odbiorze przez człowieka - otwarciu w arkuszu kalkulacyjnym, przejrzeniu, ewentualnym dalszym filtrowaniu czy sortowaniu. Format XML służy przede wszystkim do wymiany danych między systemami informatycznymi, gdzie strukturę pliku przetwarza inny program, a nie osoba czytająca zawartość bezpośrednio. Wybór formatu zależy więc od tego, kto lub co jest faktycznym odbiorcą eksportowanych danych.

W praktyce wiele wdrożeń korzysta z obu formatów jednocześnie, dla różnych odbiorców tych samych danych źródłowych - to samo zestawienie może zasilać zarówno cykliczny plik XLSX trafiający do działu księgowości, jak i równoległy eksport XML zasilający system zewnętrznego partnera biznesowego, bez potrzeby duplikowania logiki pobierania danych w dwóch osobnych miejscach.

Dobre praktyki

Kilka zasad pomaga utrzymać zadanie eksportu XLSX przejrzystym i łatwym w utrzymaniu:

  • Nazewnictwo definicji w x_skorowidze - czytelna nazwa konfiguracji ułatwia identyfikację, które zadanie z czego korzysta, zwłaszcza przy wielu równoległych eksportach.
  • Wykorzystanie istniejących zestawień - w miarę możliwości warto opierać eksport na już przygotowanych i wcześniej sprawdzonych widokach danych, zamiast tworzyć zupełnie nową logikę od podstaw.
  • Dopasowanie cykliczności do odbiorcy - częstotliwość generowania pliku powinna odpowiadać rzeczywistej potrzebie odbiorcy, a nie być ustawiona odgórnie tak samo dla wszystkich eksportów.
  • Weryfikacja powiadomień - pole MAILPOWIADOMIENIE pozwala na bieżąco kontrolować, czy zadanie eksportu rzeczywiście wykonuje się zgodnie z ustalonym wcześniej planem.

Warto też pamiętać, że eksport XLSX jest tak dobry, jak dobre jest zestawienie danych, na którym się opiera - błąd w logice widoku źródłowego przełoży się bezpośrednio na wynikowy plik, dlatego zmiany w zestawieniach wykorzystywanych przez aktywne zadania eksportu warto testować ze szczególną ostrożnością. Podobnie jak przy organizacji bazy danych, gdzie nieaktualne statystyki potrafią po cichu psuć wydajność zapytań, błędnie działający eksport XLSX długo pozostaje niezauważony, jeśli odbiorca pliku nie porówna jego zawartości z rzeczywistym stanem danych.

Podsumowanie

Eksport XLSX to zadanie SSJob automatyzujące regularne przygotowanie arkusza danych na podstawie definicji przechowywanej w tabeli x_skorowidze. Konfiguruje się je wierszem w tabeli _jobs, wskazującym konkretną definicję eksportu oraz harmonogram jego uruchamiania, dzięki czemu odbiorcy pliku - dział księgowości, kontrahent czy zewnętrzny system - otrzymują aktualne dane bez angażowania człowieka w ich przygotowanie.

Tam, gdzie odbiorcą danych jest inny system, a nie człowiek, naturalnym uzupełnieniem pozostaje analogiczne zadanie eksportu do formatu XML, korzystające z tego samego mechanizmu konfiguracyjnego tabeli _jobs i x_skorowidze. Znajomość obu mechanizmów pozwala świadomie wybrać właściwy format już na etapie planowania integracji, zamiast dopiero po fakcie przerabiać gotowy plik XLSX na potrzeby systemu, który w rzeczywistości oczekiwał ustrukturyzowanego pliku XML.

Słownik pojęć

Podstawowe pojęcia - eksport XLSX

Terminologia przydatna przy konfiguracji automatycznego eksportu danych.

EEksport XLSX
Zadanie SSJob generujące plik arkusza kalkulacyjnego na podstawie zdefiniowanego źródła danych StudioSystem.
TTabela x_skorowidze
Uniwersalna tabela rejestrowa StudioSystem, przechowująca konfiguracje różnych typów rozróżniane kolumną PRX.
PPRX
Kolumna tabeli x_skorowidze identyfikująca rodzaj przechowywanej konfiguracji, np. XLSX dla definicji eksportu.
PPole PARAMETRY
Pole tabeli _jobs wskazujące, którą konfigurację z tabeli x_skorowidze ma wykorzystać dane zadanie.
ZZestawienie
Predefiniowany widok danych StudioSystem, który może posłużyć jako źródło danych do eksportu XLSX.
TTabela _jobs
Tabela systemowa przechowująca konfigurację wszystkich automatycznych zadań usługi SSJob.
FAQ

Najczęściej zadawane pytania

01

Czym jest zadanie eksportu XLSX w SSJob?

To zadanie cykliczne generujące plik arkusza kalkulacyjnego na podstawie zdefiniowanego wcześniej źródła danych i zapisujące go w formacie XLSX.

02

Skąd zadanie wie, jakie dane wyeksportować?

Z pola PARAMETRY w tabeli _jobs, wskazującego konkretną konfigurację w tabeli x_skorowidze, gdzie kolumna PRX ma wartość XLSX.

03

Czym jest tabela x_skorowidze?

To uniwersalna tabela rejestrowa StudioSystem, wykorzystywana do przechowywania wielu różnych typów konfiguracji, rozróżnianych kolumną PRX - między innymi definicji eksportu i kont pocztowych.

04

Czy eksport XLSX może korzystać z gotowych zestawień?

Tak, definicja eksportu może wskazywać wcześniej przygotowane zestawienie danych, korzystające z tego samego mechanizmu widoków co moduł raportowania StudioSystem.

05

Jak często można uruchamiać eksport XLSX?

Zgodnie z dowolnie ustawionym interwałem w polach CYKLICZNOSC i CYKLICZNOSCTYPE tabeli _jobs, od kilku minut po kilka dni, zależnie od potrzeb integracyjnych.

06

Czym różni się eksport XLSX od eksportu XML?

Oba korzystają z podobnego mechanizmu konfiguracyjnego, ale generują dane w innym formacie - XLSX jako gotowy arkusz do bezpośredniej analizy przez człowieka, XML jako format wymiany danych między systemami.

Warto przeczytać

Powiązane materiały o automatyzacji zadań SSJob

Kolejne kroki, jeśli konfigurujesz automatyczne zadania StudioSystem.

Raporty

Baza_widok

Mechanizm zestawień danych, który może posłużyć jako źródło automatycznego eksportu XLSX.

Czytaj dalej
Zgłoszenia

IX. HelpDesk Synchro

Zadanie SSJob korzystające z podobnego mechanizmu nazwanej konfiguracji w polu PARAMETRY.

Czytaj dalej
Infrastruktura

VIII. MikroTik Backup

Zadanie zabezpieczające konfigurację routerów, monitorowane podobnym mechanizmem SSJob.

Czytaj dalej
Raporty

VII. Raport JEŻELI

Zadanie warunkowe wysyłające powiadomienie tylko po spełnieniu zdefiniowanego warunku SQL.

Czytaj dalej
Baza danych

V. Organizacja bazy danych

Zadanie SSJob aktualizujące statystyki optymalizatora zapytań bazy StudioSystem.

Czytaj dalej
SSJob

SSJob - automatyczne zadania

Pełny mechanizm usługi SSJob i tabeli _jobs, z przykładami innych typów zadań realizowanych tą samą usługą.

Czytaj dalej

Chcesz zobaczyć platformę w działaniu?

Uruchom demo modułów StudioSystem i sprawdź platformę na żywo.