ssJob

Aplikacja ssJob pozwala na wykonywanie automatycznie zadań w określonych odstępach czasowych.

W celu utworzenia nowego zadania należy wypełnić tylko pola wymagane przez konkretne zadanie. Wartości zapisywane są w tabeli _jobs.

Transakcje w ramach ssJob

 

Pobieranie kursów walut ze strony NBP

Aktualizowane raz dziennie, w przypadku weekendów, dane pobierane są z piątku.

Wymagane pola:

[NAZWA]=Pobieranie kursów NBP
[TYPZADANIA]=POBIERZ_kursy_NBP
[CYKLICZNOSC]=1
[CYKLICZNOSCTYPE]=dni
[OSTATNIOWYKONANO] – data i godzina rozpoczęcia dla cyklicznego wykonywania zadania, po godzinie 12:00 (np. 2017-12-15 13:00)
[PARAMETRY]=ActiveServer=Nazwa_serwera
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[DNIZADANIA]=0
[ZADANIESOBOTA]=1
[ZADANIENIEDZIELA]=1

 

Weryfikacja kursów NBP

Wykorzystywane do automatycznej wysyłki maili z powiadomieniem o braku aktualizacji kursów NBP.

Wymagane pola:

[NAZWA]=Weryfikacja kursów NBP
[TYPZADANIA]=VERIFY_kursy
[CYKLICZNOSC]=1
[CYKLICZNOSCTYPE]=dni
[OSTATNIOWYKONANO] – data i godzina rozpoczęcia dla cyklicznego wykonywania zadania (po godzinie wykonania POBIERZ_kursy_NBP)
[MAILPOWIADOMIENIE], [MAILPOWIADOMIENIEDW], [MAILPOWIADOMIENIEUDW] – adresy e-mail do powiadomień.
[PARAMETRY]=ActiveServer=Nazwa_serwera
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[DNIZADANIA]=0
[ZADANIESOBOTA]=1
[ZADANIENIEDZIELA]=1

 

Weryfikacja podatnika VAT

Wysyłanie wiadomości e-mail w przypadku, gdy któryś z weryfikowanych podatników nie jest czynnym płatnikiem VAT.

Wymagane pola:

[NAZWA]=Weryfikacja podatnika
[TYPZADANIA]=WERYFIKACJA_PODATNIKA
[CYKLICZNOSC]=1
[CYKLICZNOSCTYPE]=dni
[OSTATNIOWYKONANO] – data i godzina rozpoczęcia dla cyklicznego wykonywania zadania
[MAILPOWIADOMIENIE], [MAILPOWIADOMIENIEDW] – adresy e-mail do powiadomień.
[PARAMETRY]=ActiveServer=Nazwa_serwera
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[JEZELI_ZAPYTANIE] – zapytanie SELECT zwracające listę numerów do sprawdzenia z kolumny NIP.
[JEZELI_TAK_MAIL] – polecenie z parametrem @NIP wykonywane, jeżeli podatnik jest płatnikiem VAT.
[JEZELI_NIE_MAIL] – polecenie z parametrem @NIP wykonywane, jeżeli podatnik nie jest płatnikiem VAT.
[DNIZADANIA]=0
[ZADANIESOBOTA]=1
[ZADANIENIEDZIELA]=1

 

Archiwizacja maili

Przeniesienie zawartości skrzynki mailowej do bazy SQL (zapisywanie przychodzących wiadomości e-mail do tabeli dpeml_inbox).

W przypadku archiwizacji maili, z tabeli _users_access pobierana jest nazwa użytkownika, hasło użytkownika i odniesienie do serwera pocztowego (kolumny UZYTKOWNIK, HASLO, UWAGI). Zapytanie:

SELECT UZYTKOWNIK, HASLO, UWAGI FROM _USERS_ACCESS WHERE PRX='EML' AND AKTYWNE='1' AND ACH='1'

Z tabeli dpeml_conf pobierany jest adres serwera oraz port (kolumny SERVER, PORT). Zapytanie:

SELECT SERVER, PORT FROM [DPEML_CONF] where CONF_NAME ='" + account["UWAGI"] + "'

Wymagane pola:

[NAZWA]=Archiwizacja maili
[TYPZADANIA]=ARCHIWIZACJA_MAILI
[CYKLICZNOSC]=5
[CYKLICZNOSCTYPE]=min
[OSTATNIOWYKONANO] – data i godzina rozpoczęcia dla cyklicznego wykonywania zadania
[FOLDERKOPII] – ścieżka do folderu w którym mają być zapisane załączniki.
[PARAMETRY]=ActiveServer=Nazwa_serwera
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[DNIZADANIA]=0
[ZADANIESOBOTA]=1
[ZADANIENIEDZIELA]=1

 

Monitoring połączeń Plus GSM

Wymagane pola:

[NAZWA]=Biling połączeń
[TYPZADANIA]=POLKOMTEL_BILING
[CYKLICZNOSC]=1
[CYKLICZNOSCTYPE]=godziny
[OSTATNIOWYKONANO] – data i godzina rozpoczęcia dla cyklicznego wykonywania zadania
[PARAMETRY]=User Id=Nazwa_użytkownika;Password=Hasło_użytkownika
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[DNIZADANIA]=0
[ZADANIESOBOTA]=1
[ZADANIENIEDZIELA]=1

 

Automatyczna wysyłka wiadomości SMS

Wymagane pola:

[NAZWA]=Wysyłka SMS
[TYPZADANIA]=SEND_SMS_MULTIINFO
[CYKLICZNOSC]=1
[CYKLICZNOSCTYPE]=godziny
[SCIEZKARAPORTU] – określenie ścieżki do certyfikatu.
[PARAMETRY] – np. cHasloCert=”haslo”;cUsertAPI=”API”;cHasloAPI=”hasloAPI”;cIdMultiInfo=”identyfikator”
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[DNIZADANIA]=0
[ZADANIESOBOTA] – według założeń
[ZADANIENIEDZIELA] – według założeń

Zadania i ich treść odczytywane są z tabeli _task.

 

Automatyczna wysyłka wiadomości e-mail

Wymagane pola:

[NAZWA]=Wysyłka e-mail
[TYPZADANIA]=SEND_SEND_EMAIL
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234
[DNIZADANIA]=0
[ZADANIESOBOTA] – według założeń
[ZADANIENIEDZIELA] – według założeń

Zadania zapisywane są w tabeli dbo._send, zapytanie:

SELECT * FROM [_send] WHERE PRX='EML' AND ACH = '1'

Skrzynka, z której będą wysyłane wiadomości e-mail musi być określona w skorowidzu o PRX=’KEML’ (dla każdego zadania z tabeli _send). Konfiguracja skrzynki mailowej pobierana jest z kolumny [KONTO_MAIL] w tabeli _send, zapytanie:

SELECT TOP(1) * FROM [x_skorowidze] WHERE KOD ='" + refnoSend + "' AND PRX='KEML'

Konfiguracja składa się z następujących parametrów:

[SCIEZKA] - adres nadawcy
[OPIS] - nazwa nadawcy
[KOMENTARZ] - nazwa serwera pocztowego
[UWAGI] - 
[IKONA] - 
[CENA2] -

Zadania wysyłki odczytywane są z tabeli _task (każdorazowo odczytywana jest partia 100 zadań). Do każdej pozycji z tabeli _send może być dopisane wiele zadań w tabeli _task, zapytanie:

SELECT TOP(100) * FROM [_task] WHERE prx='EML' and LEN(EMAIL) > 0 AND REPEAT < 5 AND REFNO_SEND ='" + zadanie["REFNO"].ToString() +

Po wykonaniu zadania następuje zapis do tabeli _historia oraz zmiana wartości w kolumnie _task.STATUS na wysłano poprawnie.

 

Tworzenie kopii bazy MSSQL.

[NAZWA]=Kopia bazy MSSQL
[TYPZADANIA]=Kopia bazy MSSQL
[RODZAJKOPII] – rodzaj kopii wybierany ze skorowidza (np. przyrostowa).
[CYKLICZNOSC]=1
[CYKLICZNOSCTYPE]=dni
[FOLDERKOPII] – ścieżka do miejsca wykonanej kopii.
[CONNECTIONSTRINGNAME] – np. Data Source=10.10.10.10;Initial Catalog=SS_StudioSystemTest;User ID=admin;Password=1234

Parametry transakcji

 

Transakcja insert update ssJob zbudowana jest z trzech zakładek:

1. Dane podstawowe

2. Dane dodatkowe

3. Powiadomienia e-mail

Zakładka Dane podstawowe

 

Typ zadania – typ zadania określony w ssJob. Zapis w kolumnie [TYPZADANIA].

Nazwa zadania – nazwa opisowa zadania. Zapis w kolumnie [NAZWA].

Data rozpoczęcia – czas rozpoczęcia (dzień i godzina) dla zadań cyklicznych. Zapis w kolumnie [OSTATNIOWYKONANO].

Cykliczność – ilość czasu, po którym zadanie zostanie powtórzone. Wartości wyrażane są liczbami całkowitymi. Zapis w kolumnie [CYKLICZNOSC].

Jednostka czasu – typ jednostek czasu dla pola Cykliczność. Zapis w kolumnie [CYKLICZNOSCTYPE].

Parametry – parametry zadania oddzielane średnikiem (np. ActiveServer=NAZWA). Zapis w kolumnie [PARAMETRY].

ConnectionString – odwołanie do bazy danych z zapisem w kolumnie [CONNECTIONSTRINGNAME].

Zakładka Dane dodatkowe

Zakładka posiada pola wypełniane w przypadku konkretnych zadań:

Zapytanie jeżeli – zapytanie SELECT zwracające wyniki dla pól Jeżeli TAK, Jeżeli NIE, Mail jeżeli TAK, Mail jeżeli NIE. Zapis w kolumnie [JEZELI_ZAPYTANIE].

Jeżeli TAK i Jeżeli NIE – polecenia wykonywane w zależności od wyników zapytanie w polu Zapytanie jeżeli. Zapisy w kolumnach [JEZELI_TAK] i [JEZELI_NIE].

Rodzaj kopii – rodzaj kopii bazy MSSQL. Zapis w kolumnie [RODZAJKOPII].

Folder kopii i Ścieżka raportu – ścieżki do folderów zapisania lub odczytu plików. Zapis w kolumnie [FOLDERKOPII] i [SCIEZKARAPORTU]. Przykład: C:/BACKUP

Format raportu – format, w jakim ma zostać zapisany raport. Zapis w kolumnie [FORMAT].

Dni zadania – numeryczne określenie dnia tygodnia, w którym będzie wykonywane zadanie (1-7). W przypadku zadań wykonywanych codziennie, należy podać wartość 0. Zapis w kolumnie DNIZADANIA.

Zadanie sobota i Zadanie niedziela – pola określające czy zadanie ma być wykonywane w soboty i niedziele, w przypadku wartości 0 dla dni zadania. Zapis w kolumnach [ZADANIESOBOTA] i [ZADANIENIEDZIELA].

Godzina – Wykorzystywane zależnie od funkcji.

Termin – Wykorzystywane zależnie od funkcji.

Zakładka Powiadomienia e-mail

 

Adresy e-mail – adresy e-mail do powiadomień, oddzielane średnikiem. Zapis do kolumny MAILPOWIADOMIENIE. Przykład:

test@test.pl;mail@mail.pl;adres@adres.com.pl

Mail jeżeli TAK i Mail jeżeli NIE – treść wiadomości e-mail, w zależności od wyników zapytania w polu Zapytanie jeżeli. Zapisy do kolumn [JEZELI_TAK_MAIL] i [JEZELI_NIE_MAIL].

Wysyłanie maili

W wielu miejscach programu może istnieć potrzeba, aby generować dużą ilość powiadomień wysyłanych np. mailem. Programowe wysyłanie pojedynczych wiadomości nie stanowi kłopotu, problem zaczyna się z wydajnością, gdy do wysłania są setki lub tysiące maili. W celu rozwiązania takiego kłopotu, program StudioSystem wraz z modułem ssJob pozwalają na łatwe przygotowanie i realizację mailingu.

Czytaj dalej Wysyłanie maili