= Powiadamianie o przeterminowanych etapach procedur = Począwszy od wersji 3.6.113 system eDokumenty umożliwia skonfigurowanie funkcji automatycznego powiadamiania użytkowników wiadomościami email o etapach procedur, dla których przekroczony został termin załatwienia. == Jak to działa == Uruchomienie wbudowanego w system eDokumenty, dedykowanego skryptu php powoduje wysłanie do każdego użytkownika, a także do jego przełożonego, emaila zawierającego zestawienie wszystkich niezałatwionych, przeterminowanych etapów. Przykładowa treść generowanego emaila przedstawiona została na rysunku 1. [[Image(powiadomienie.jpg)]][[BR]] (''Rys.1'') == Konfiguracja == Podstawowym wymaganiem dla prawidłowego działania skryptu jest skonfigurowanie w systemie eDokumenty tzw. systemowego konta pocztowego, z którego wysyłane będą powiadomienia. Aby to zrobić należy przejść do ''Panelu sterowania'' i kliknąć link ''Systemowe konto pocztowe'', a następnie wprowadzić poprawne dane (wpisując adres email w polu ''Wyślij testowy email'' można też sprawdzić czy konto zostało prawidłowo skonfigurowane). {{{ Ustawienia >> Panel sterowania >> Sekcja Ogólne >> Systemowe konto pocztowe }}} Wiadomości z powiadomieniami wysyłane są na adresy email przypisane pracownikom w module ''Konta pracowników''. Zalecane jest więc zweryfikowanie, czy wszyscy pracownicy mają określony właściwy adres email. Sam skrypt natomiast, znajduje się w katalogu ''public_html/apps/edokumenty/scripts/''. Oryginalna wersja skryptu zapisana jest w pliku ''!OverdueWorkflowStagesToEmail.php_default''. Do utworzenia treści emaila wykorzystywany jest szablon HTML/Flexy, którego oryginalna wersja znajduje się w tym samym katalogu i posiada taka samą nazwę ale z rozszerzeniem ''.tpl_default''. Pliki te należy skopiować do tego samego katalogu, ale usuwając z rozszerzenia "_default" (czyli odpowiednio jako ''!OverdueWorkflowStagesToEmail.php'' i ''!OverdueWorkflowStagesToEmail.tpl''). Tak przygotowany skrypt będzie działał prawidłowo. Jeśli jednak okaże się, że potrzebne są pewne zmiany (np. w zapytaniu źródłowym, czy też w treści wysyłanego emaila) pliki te można wyedytować i dostosować do potrzeb. == Automatyzacja wykonywania skryptu == W typowym zastosowaniu zalecamy konfigurację automatycznego wykonywania skryptu na serwerze codziennie, od poniedziałku do piątku, o godzinie 12:00. Poniżej zamieszczona została informacja w jaki sposób dodać takie zadanie na serwerach linux i windows. === Linux === Na serwerach linux automatycznie wykonywane zadania najczęściej konfiguruje się poprzez edycję pliku /etc/cron.d/crontab. W pliku tym należy dodać poniższy wiersz. {{{ #!sh 0 22 * * 1-5 www-data php -f /home/edokumenty/public_html/apps/edokumenty/scripts/OverdueWorkflowStagesToEmail.php }}} === Windows === Na serwerach Windows należy wykonać z konsoli poniższe polecenie, które doda nowe zadanie do systemowego Harmonogramu Zadań. {{{ #!sh schtasks /CREATE /sc WEEKLY /d MON,TUE,WED,THU,FRI /st "12:00:00" /tn "OverdueWorkflowStagesToEmail" /tr "php -f \"(ścieżka_instalacyjna)\eDokumenty\public_html\apps\edokumenty\scripts\OverdueWorkflowStagesToEmail.php"" }}} W zależności od obsługiwanej składni, dla parametru /sc zamiast ''WEEKLY'' może być wymagane użycie wartości ''Cotygodniowo'', a dla parametru /d wartości ''Pn,Wt,Śr,Cz,Pt''. Można to sprawdzić za pomocą polecenia: {{{ schtasks /CREATE /? }}} === Archiwizacja === Aby wysłane maile przez skrypt zapisywały się w wysłanych zmieniamy wpis w pliku !OverdueWorkflowStagesToEmail.php z: {{{ 'x-bs-edok-svefid' => EmailAccount::SENT_EMAIL_APPEND_NONE, }}} na {{{ 'x-bs-edok-svefid' => EmailAccount::SENT_EMAIL_APPEND_AUTO, }}} == Diagnozowanie problemów == Domyślnie skrypt loguje do pliku tekstowego każde uruchomienie oraz liczbę wysłanych wiadomości email. Logowane są także błędy jakie pojawiły się podczas jego działania. Pliki z logami znajdują się w katalogu ''public_html/apps/edokumenty/var/log/'' i są to odpowiednio pliki ''workflow_stages_to_email_stat.log'' i ''workflow_stages_to_email_error.log''. W celach testowych można uruchomić skrypt z konsoli za pomocą polecenia: {{{ #!sh php -f (ścieżka_instalacyjna)\eDokumenty\public_html\apps\edokumenty\scripts\OverdueWorkflowStagesToEmail.php }}} Bądź też po prostu z przeglądarki używając adresu: {{{ https://{domena}/public_html/apps/edokumenty/scripts/OverdueWorkflowStagesToEmail.php }}} Tworzenie pliku log w przypadku wystąpienia problemów. {{{ php -f home/public_html/apps/edokumenty/scripts/OverdueWorkflowStagesToEmail.php > log.txt }}}