Oskar Shon

Oskar Shon Dodatki do Office
www.VBATools.pl

Temat: Wysyłaj raporty cyklicznie

Załóżmy że zajmujemy się wysyłką raportów przygotowywanych ze zmienna treścią lub datą ich publikacji w nazwie. Aby dokonać wysyłki, musimy się pochylać nad nimi i każdorazowo przygotowywać wiadomość do analizy. Wypadałoby tą czynność zautomatyzować nieprawdaż?

Zatem scheduler systemowy, ale ten nie daje rady z plikami, które posiadają w nazwie zmienną taka jak data, zatem proponuje narzędzie w formie aplikacji Windows, które będzie realizować wysyłkę pocztą email.


Obrazek


adeklarowany plik będzie pobrany ze wskazanej lokalizacji i wysłany przez MS Outlooka do adresatów podanych w podłączonym szablonie “oft”. Szablon ten powinien posiadać również temat oraz treść. Jeśli nie będzie zawierał tych elementów temat będzie utworzony z nazwy załącznika. Po wysyłce plik będzie mógł być przeniesiony do innej lokalizacji lub skasowany. Narzędzie posiada też raporty wysyłki, a dzięki nim można też sprawdzić czy plik został już wysłany i pozostawić go w spokoju nie podejmując żadnej akcji.

Sam załącznik może być spakowany ZIPem, aby jego wielkość nie przysparzała o zawrót głowy, a sama wysyłka zostanie realizowana o zadeklarowanym czasie. Cyklicznie o wskazanej godzinie.

1. Codziennie
2. Co poniedziałek
3. Co piątek
4. W pierwszy dz. msca
5. W ostatni dz. msca

Taki zabieg pozwoli nie przejmować się wysyłką i jeżeli plik z raportem zostanie przygotowany i osadzony w folderze, zostanie nadany automatycznie podobnie jak samo uruchomienie programu.

Aby mieć pewność, że plik(i) załapią się na wysyłkę, przygotowany jest filtr oraz możliwość generowania maila gotowego do wysłania, pomijając zadany czas realizacji.


Obrazek


A co jeśli nie ma daty, ale są zmienne liczby lub litery, które przeszkadzają w określeniu jednoznacznej nazwy pliku… żaden problem. Został wprowadzony system porównania znakami “?#*” zatem można złożyć nazwę ignorując kwestię daty.


Obrazek


Aby program nie przeszkadzał w pasku uruchomionych aplikacji można go zminimalizować do traya, gdzie obok zegarka systemowego będzie odliczał swój czas.

Oczywiście dla maksymalnego uproszenia można zdefiniować nazwę w postaci gwiazdki “*” jako uniwersalnego znaku, jakiejkolwiek treści dla nazwy pliku i wrzucać raporty do wskazanego folderu do wysłania… ale chciało by się definiować choćby różne szablony kierowane do różnych odbiorców, co zapewne będzie możliwe w nast wersjach.

Pierwsza wersja zawiera deklarację kilku plików oddzielnych pałką (w przyszłości kilku w jednej wiadomości i wg zadeklarowanego spisu). Ponadto będzie zawierać własnego klienta poczty (obecnie wysyłka jest realizowana z MS Outlooka, który przez cały czas musi pozostać włączony).

Więcej na ten temat na tej stronie: http://vbatools.pl/wysylaj-raporty-cyklicznie/