Korespondencja seryjna

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2020.1.x; autor: Dawid Golonka

 

Wstęp

Istnieją różne powody, dla których przedsiębiorstwa wdrażają u siebie oprogramowanie do elektronicznego obiegu dokumentów. Jednym z najistotniejszych jest fakt, że automatyzacja procesów biznesowych pozwala  zaoszczędzić czas potrzebny na wykonanie powtarzalnych czynności. Jednym z przykładów takiej automatyzacji jest wprowadzenie funkcjonalności korespondencji seryjnej, która polega na generowaniu dokumentów w oparciu o pewien szablon, w którym zmieniane są kluczowe pola i wartości. Te wartości mogą być pobierane z zewnętrznego źródła danych.

Poniższy artykuł będzie dotyczył opisu konfiguracji przykładowego wykorzystania korespondencji seryjnej w systemie WEBCON BPS.

Konfiguracja

Temat zostanie omówiony w oparciu o przypadek biznesowy, w którym chcemy wyegzekwować od kontrahentów należności za niezapłacone faktury. Dla każdego z dłużników zostanie wygenerowany dokument wezwania do zapłaty z informacją o kwocie i numerze faktury, która nie została uregulowana.

W celu realizacji tematu stworzone zostały trzy procesy:

  1. Proces faktury
  2. Proces korespondencji seryjnej
  3. Proces korespondencji wychodzącej

Konfiguracja procesu faktury

Obieg procesu faktury składa się z trzech kroków. Krok startowy gdzie uzupełniane są dane faktury (Registration) umożliwia przejście dalej dwiema ścieżkami. Ścieżka rejestracji bez skanowania faktury prowadzi bezpośrednio do kroku końcowego, gdzie przechowywane są zarejestrowane faktury (Archived). Druga ścieżka prowadzi do kroku systemowego oczekiwania na skan, skąd dokument również trafia do Archiwum.

Ry. 1. Schemat obiegu faktury

 

Aby móc w innych procesach odwoływać się do danych zarejestrowanych w tym obiegu należy utworzyć źródło danych BPS i w jego konfiguracji wybrać nowoutworzony proces faktury, określić typ formularza, a także wybrać krok – „Archiwum”.

Na poniższym zrzucie przedstawiony jest widok formularza na kroku rejestracji z przykładowo uzupełnionymi danymi. Pole Kontrahenta (Contractor) wybierane jest ze słownika. Wprowadzono przykładowe wartości, nie uzupełniając pola z datą zapłaty za fakturę (faktura nieopłacona).

Rys.2. Rejestracja nowej nieopłaconej faktury

 

Na samym dole formularza znajduje się atrybut typu tabela danych o nawie „Invoices”, gdzie po wybraniu kontrahenta można podejrzeć listę faktur wystawionych na ten podmiot. Uzyskanie takiego efektu ogranicza się do wskazania utworzonego wcześniej źródła danych BPS i zawężenia wyników do wskazanego na formularzu kontrahenta.

Rys. 3. Konfiguracja tabeli danych (zawężanie do wybranego na formularzu Kontrahenta)

 

Konfiguracja procesu korespondencji seryjnej

W procesie korespondencji seryjnej będą wybierani Kontrahenci, którzy mają zaległe faktury. Dla każdego z nich zostanie wystartowany osobny podobieg Korespondencji Wychodzącej, gdzie generowały się będą wezwania do zapłaty.

Rys. 4. Schemat obiegu Korespondenci Seryjnej

 

Poniżej przedstawiono zrzut ekranu przedstawiający widok formularza na kroku startowym.

Rys. 5. Formularz na kroku startowym Korespondencji Seryjnej

 

Po wybraniu Kontrahenta możemy sprawdzić wartość niezapłaconych przez niego faktur. Wartość ta pojawi się w polu „Value of unpaid invoices”(Wartość niezapłaconych faktur). Można to zrobić korzystając z atrybutu typu „Wiersz danych” i tworząc proste zapytanie do bazy BPS, w zapytaniu zawężamy się tylko do wyników w których pole „Data płatności”(Payment date) jest puste. Przykład takiego zapytania poniżej:

Rys. 6. Zapytanie w atrybucie typu wiersz danych pokazujące sumę zadłużenia kontrahenta

 

Tabela danych „List of unpaid invoices” (Lista niezapłaconych faktur) różni się od tej z procesu faktury jedynie dodatkowym filtrem. Brane są pod uwagę jedynie dokumenty po terminie płatności, gdzie pole data płatności jest puste.

Rys. 7. Filtr w atrybucie tabela danych, który zawęża wyniki tylko do nieopłaconych faktur

 

Mając już pogląd na to, które firmy zalegają z zapłatą i jakich faktur to dotyczy, możemy dodać te firmy na listę pozycji „Contractors with arrears” (Kontrahenci z zaległościami). Lista składa się z dwóch kolumn – nazwą Kontrahenta oraz jego zadłużeniem. Kontrahent wybierany jest ze słownika, a kolumna zadłużenie to wiersz danych skonfigurowany analogicznie jak jest to pokazane na rysunku nr 6.

Dla każdego z kontrahentów na liście chcemy uruchomić podobieg korespondencji wychodzącej. Na ścieżce przejścia „Register outgoing correspondence” (Rejestruj korespondencję wychodzącą) konfigurujemy akcję startowania podobiegu (Konfiguracja startowanego procesu Korespondencji Wychodzącej przedstawiona jest w dalszej części artykułu).

Rys. 8. Ustawienie akcji "Uruchom podobieg" na ścieżce

 

Konfiguracja akcji przedstawia się następująco:

Rys. 9. Konfiguracja akcji "Uruchom podobieg"

 

Rys. 10. Konfiguracja akcji "Uruchom podobieg"

 

W powyższym zapytaniu odnosimy się do tabeli przechowującej dane z list pozycji. Przekazujemy nazwy kontrahentów umieszczone na liście pozycji „Contractors with arrears” do atrybutu „Contractor” w podobiegu „Outgoing correspondence” (Korespondencja wychodząca). W parametrze DET_WFCONID podajemy ID listy pozycji z której pochodzą dane, a DET_WFDID odnosi się do ID danego elementu.

Po przejściu ścieżką i pomyślnym wykonaniu się akcji zostaną stworzone podobiegi – w liczbie odpowiadającej liczbie firm.

Rys. 11. Sygnatury uruchomionych podobiegów (Korespondencji Wychodzącej)

 

Konfiguracja procesu Korespondencja Wychodząca

Proces Korespondencji wychodzącej składa się z czterech kroków. W procesie uruchamianym samodzielnie należy podać dane na kroku rejestracji, skąd w zależności od wybranej ścieżki można przejść do kroku oczekiwania na skan dokumentów, bądź bezpośrednio do kroku „Preparation and shipping”(Przygotowanie i wysyłka). W tym kroku generują się dokumenty, które mogą być wysłane dalej drogą elektroniczną (E-mail) bądź fizycznie pocztą, jest to realizowane zewnętrznie poza obiegiem. Po wysłaniu korespondencji dokument trafia do kroku „Archiwum”.

W sytuacji, gdy obieg startowany jest jako podobieg procesu Korespondencji Seryjnej, dokument trafia ścieżką „Generate Word document” bezpośrednio z kroku „Register” do kroku „Preparation and shipping”.

 

Rys. 12. Schemat obiegu Korespondencji Wychodzącej

 

W procesie utworzone zostały atrybuty niezbędne do wygenerowania wezwania.

Rys. 13. Lista atrybutów niezbędnych do przekazania do szablonu generowanego dokumentu

 

Do pola wyboru „Contractor” przekazywana jest nazwa Kontrahenta z procesu Korespondencji Seryjnej. Na jej podstawie uzupełnia się tabela danych „List of invoices after the payment date” z zastosowanym filtrem jak w rysunku „7”. Atrybut obliczający wielkość długu również ma analogiczną konfigurację jak na rysunku 6.

Na ścieżce przejścia „Generate Word document” (Generuj dokument Word) skonfigurowano akcję generowania pliku Word. Opis dodawania szablonu zawarty jest w artykule:

https://kb.webcon.pl/sposoby-przechowywania-szablonow-dokumentow/

Przygotowany szablon wraz z wprowadzonymi z procesu wartościami przedstawia się następująco:

Rys.14. Przygotowany przykładowy szablon wezwania. Z prawej strony widoczne menu dodatku Word Add In

 

Rezultat końcowy

Na rysunku 11 można zaobserwować, że wygenerowały się dwa podobiegi, dla każdej z firm z osobna. Po przejściu na kartę formularza jednego z tych podobiegów ukazuje się następujący widok:

Rys. 15. Widok formularza kroku "Preparation and shipping". Wygenerowano wezwanie dla firmy “Masterkomputex”

 

Wygenerowały się dokumenty z wezwaniem do zapłaty.

Rys.16. Wygenerowane wezwanie do zapłaty dla pierwszej z wybranych firm (Masterkomputex)

 

Rys. 17. Wygenerowane wezwanie do zapłaty dla drugiej z wybranych firm (Komputerex)