Jedną z funkcji dostępnych z poziomu programu MiniAnalizy jest możliwość cyklicznego (zgodnie z zadanym harmonogramem) generowania plików zawierających określne, zdefiniowane przez użytkownika dane. Dane mogą być pobierane z dowolnej bazy Microsoft SQL za pomocą uprzednio przygotowanego zapytania SQL.

Pliki z wynikami zapytania mogą być przechowywane na komputerze, w lokalizacji sieciowej, mogą zostać przekazane na serwer FTP lub wysłane na zdefiniowany adres email. MiniAnalizy pozwalają na generowanie plików XLSX, CSV, TXT oraz XML. Pliki mogą być wykorzystywane w celach informacyjnych (np. wiadomość email z załącznikiem informującym o sprzedaży dla poszczególnych grup kontrahentów czy wartości zaległych płatności) lub w celach dalszego przetwarzania (np. przekazanie do zewnętrznego systemu w celu aktualizacji stanów magazynowych, listy kontrahentów itp.).

W niniejszym artykule chciałbym pokazać w jaki sposób można przygotować zadanie w programie MiniAnalizy aby każdego dnia o określonej godzinie został przygotowany plik z wynikami zapytania SQL.

1. Należy ustalić co ma zawierać plik - zapytanie SQL. 

Załóżmy, że interesuje nas lista zawierająca kody i nazwy towarów. Zapytanie SQL będzie wyglądało jak poniżej:

SELECT
Twr_Kod AS [Kod towaru],
Twr_Nazwa AS [Nazwa towaru]
FROM CDN.Towary
WHERE Twr_NieAktywny<>1

Etykiety (nagłówki) pól w pliku wynikowym zostaną określone jako Kod towaru i Nazwa towaru, zgodnie z tekstem w nawiasie kwadratowym. Uwzględnione zostaną wszystkie towary poza tymi, które posiadają oznaczenie "nieaktywny".

2. Dodanie analizy w programie.

Tak przygotowane zapytanie należy umieścić w definicji zapytania SQL w programie MiniAnalizy. W tym celu uruchamiamy program, w lewym panelu za pomocą prawego przycisku myszy wybieramy opcję: "Dodaj analizę". Na zakładce Ogólne uzupełniamy nazwę analizy np. Lista towarów, poniżej w polu Baza MS-SQL wskazujemy źródłową bazę danych, z której pobrane zostaną dane.

Na zakładce: Zapytanie, wklejamy treść zapytania z punku 1.

Na zakładce: Domyślne, uzupełniamy pola w grupie: Ustawienia domyślne pliku, gdzie:

Nazwa pliku - to nazwa pliku wynikowego (bez rozszerzenia: xlsx, xml, txt, csv), 

Arkusz - to nazwa arkusza w pliku XLSX (pole jest wymagane tylko w przypadku generowania plików XLSX),

Węzeł ROOT - to nazwa głównego węzła w pliku XML (wymagane tylko przy generowaniu plików XML),

Węzeł XML - to nazwa węzła w pliku XML, gdzie zostanie umieszczony pojedynczy wynik zapytania - pojedynczy rekord (wymagane tylko przy generowaniu plików XML).

W przypadku, gdyby plik miał być wysyłamy jako załącznik email to należy dodatkowo uzupełnić grupę: Ustawienia domyślne email, w przypadku wysyłki FTP - uzupełniamy grupę ustawienia domyślne FTP.  Wszystkie parametry wywoływane poprzez listę np. serwer FTP, skrzynkę nadawczą czy treść wiadomości możemy ustawić w opcji Konfiguracja -> Parametry.

Przygotowaną w ten sposób analizę możemy zapisać.

3. Przygotowanie zadania dla harmonogramu.

Po ponownym wejściu w definicję analizy (prawy przycisk myszy, opcja: Definicja) wybieramy zakładkę: Zadania. Za jej pomocą możemy dodać zadanie. Jedna analiza może być podstawą do generowania przez program wielu zadań (np. oddzielne zadanie tworzenia pliku, oddzielne wysyłki email, oddzielne przesłania pliku do FTP).

W oknie kreatora zadań określamy parametry jak poniżej:

Pole rozdaj zadania decyduje o type "akcji" jaka zostanie wykonana przez program, w grupie: Uruchamianie, określamy o której godzinie i w jakie dni zadanie ma zostać wykonane. Ikona strzałki skierowanej w prawo, pozwala na przejście do kolejnego okna z parametrami zadania. W tym przypadku będzie ono wyglądało jak poniżej:

W dalszej kolejności zadanie może zostać zapisane.

Po przygotowaniu zadania lub wielu zadań możemy zdecydować czy mają one być wykonywane pojedynczo, według harmonogramu zdefiniowanego w grupie: Uruchamianie, czy może wygodniejsze było by uruchomienie wielu zadań na raz (w ramach pakietu). Jeżeli zdecydujemy się na opcję "pakietu", to będziemy mogli wskazać czas i dzień rozpoczynania działania, a zadania w pakiecie zostaną uruchomione jedno po drugim według kolejności ich umieszczenia w pakiecie. W ramach pakietu zadań można również dodawać uruchamianie innych (zewnętrznych programów), których użycie w pewnych scenariuszach może być pomocne. Poniżej oba scenariusze działania.

4. Dodawanie pojedynczych zadań do harmonogramu.

Na zakładce: Zadania w definicji analizy, ustawiamy się na zadaniu, które chcemy dodać do harmonogramu. Następnie wybieramy przycisk: Dodaj do harmonogramu Windows.

Zadanie dodane w ten sposób widoczne będzie również z poziomu harmonogramu systemu Windows (można z tego poziomu sterować dodatkowymi wyzwalaczami, pozwalającymi na dodatkowe uruchamianie zadania - dotyczy głównie zadań uruchamianych z dużą częstotliwością np. co 15 minut, gdzie precyzyjne ustawienie wyzwalacza w harmonogramie windows eliminuje potrzebę dodawania wielu zadań w MiniAnalizach). Po dodaniu zadania do harmonogramu, uruchomi się ona automatycznie w zadanym czasie, niezależnie czy użytkownik będzie zalogowany do systemu Windows czy nie. Dodanie zadania do harmonogramu wymaga posiadania przez użytkownika uprawnień administracyjnych w systemie Windows.

5. Dodawanie pakietów zadań.

Stanowi alternatywne podejście do dodawania pojedynczych zadań. Stosowanie pakietów zalecane jest gdy wykonywanie zadań odbywa się jedno po drugim. Szczególnie jest użyteczne gdy np. przed wykonaniem analizy należy pobrać jakieś dane zewnętrzne (uruchomić program zewnętrzny), a dopiero po ich uaktualnieniu w bazie danych źródłowych, przekazać dane wynikowe na zewnątrz.

Aby utworzyć nowy pakiet zadań, należy wybrać opcję: Konfiguracja -> Pakiety zadań. Po wybraniu przycisku: Dodaj możemy ustawić parametry całego pakietu, a w szczególności godzinę i dzień uruchamiania pakietu. Po zapisaniu pakietu należy wybrać zadania, które mają się w nim znaleść (za pomocą przycisku: Zadania w pakiecie), a następnie (podobnie jak w przypadku pojedynczych zadań opisanych w punkcie 4), pakiet należy dodać do harmonogramu Windows (za pomocą przycisku: Dodaj do harmonogramu Windows). W późniejszym czasie, istnieje możliwość dodawania kolejnych zadań do pakietu oraz zmiany kolejności ich wykonywania bez potrzeby usuwania i ponownego dodawania do harmonogramu Windows.