Sygnatury dokumentów w BPS

Facebooktwitterpinterestlinkedinmail

dotyczy wersji 8.2.x; autor: Marcin Wiktor

Sygnatury w BPS to innymi słowy mówiąc unikalny numer dokumentu w systemie, pewien określony ciąg tekstu, który jednoznacznie identyfikujący każdy dokument w workflow.

Dzięki niej, użytkownicy będą mogli łatwo i jednoznacznie zidentyfikować dokument na podstawie sygnatury gdyż ta musi być unikalna w obrębie całego systemu. Dodatkowo można mieć całkowitą pewność, że podana sygnatura będzie zawsze odnosiła się do tego samego dokumentu, gdyż nie ma możliwości zmiany sygnatury zarejestrowanego dokumentu, nawet przez administratorów.

Sygnatura dokumentu jest tworzona w momencie pierwszego zapisu dokumentu, dlatego każdy dokument istniejący w systemie, będzie posiadał unikalną sygnaturę.

Odpowiednio przemyślana struktura sygnatury znacznie usprawnia także wyszukiwanie dokumentów
(nie znając jego numeru ID czy też właśnie samej sygnatury) i przeglądanie raportów.

BPS oferuje bardzo duże możliwości konfiguracji funkcjonalności sygnatur i  postaram się w tym artykule poza możliwościami konfiguracyjnymi przedstawić także zalety definiowania odpowiednich sygnatur
jak i podać kilka przykładów niestandardowych ustawień.

 

1. Konfiguracja sygnatur

Sygnatury dla procesu można zdefiniować na 2 różnych poziomach – obiegów lub typów dokumentów, jednakże zawsze będzie ustawiana tylko jedna z nich (w przypadku zdefiniowania obu naraz, dokumentowi będzie nadawana sygnatura zdefiniowana w typie dokumentu).

Żeby zademonstrować różnicę w działaniu obu sposobów, wykorzystamy prosty przykład procesu delegacji. Obieg ten będzie posiadał 3 typy dokumentów – delegacje krajowe (KRAJ), delegacje zagraniczne (ZAGR) oraz delegacje lokalne (LOK):

  1. Na poziomie obiegów dokumentów – sygnatura obiegu jest uwzględniana tylko w przypadku, gdy sygnatura typu dokumentu, dla którego obieg został uruchomiony, nie została określona lub jest ustawiona na „Pobieraj sygnaturę obiegu”.

syg_p1
W ten sposób kolejne numery będą nadawane w obrębie całego obiegu, nie rozróżniając typów dokumentów. Jeżeli przykładowo zarejestrujmy po jednym dokumencie z każdego typu to ich sygnatury będą wyglądały tak:

– KRAJ/2015/000001
– LOK/2015/000002
– ZAGR/2015/000003

 

  1. Na poziomie typów dokumentów – w przypadku wybrania jakiejkolwiek innej opcji niż „Pobieraj sygnaturę obiegu”, dokumentom będzie nadawana sygnatura zdefiniowana w tym miejscu.
    syg_p2
    W tym przypadku kolejne numery będą nadawane w obrębie każdego z typów dokumentów.
    Czyli 3 dokumenty, analogiczne jak z poprzedniego punktu, będą miały takie sygnatury:

– KRAJ/2015/000001
– LOK/2015/000001

– ZAGR/2015/000001

 

Dla obu powyższych przykładów, numeracja będzie resetować się w każdym kolejnym roku kalendarzowym.

Nieważne, na które miejsce definiowania sygnatury się zdecydujemy, widać już że i tak w większości przypadków, jest to znacznie lepsze rozwiązanie niż nadawanie po prostu nic nie mówiącej numeracji ciągłej.

 

Istnieje jeszcze trzeci, znacznie bardziej zaawansowany sposób tworzenia sygnatury – poprzez wykorzystanie dodatku SDK. Takie rozwiązanie umożliwia zastosowanie własnych rozwiązań przy generowaniu numeru dokumentu.

Ten sposób nie będzie opisywana w tym artykule, jednak warto pamiętać o tym, że BPS oferuje taką możliwość.

 

2. Struktura sygnatury

W definicji sygnatury możemy użyć wszystkie atrybuty systemowe, formularza i zmienne kontekstowe dostępne w edytorze wyrażeń. Będą one umieszczane w sygnaturze, jednakże nie ma możliwości zawężania numeracji do tych wartości. Obrazowo mówiąc, możemy w sygnaturze umieścić np. nazwę działu pracownika, ale nie możemy numerować dokumentów oddzielnie w obrębie każdego z tych działów.

 

Jeżeli zdecydujemy się na umieszczenie wartości pola z formularza w sygnaturze, należy pamiętać o tym,
że sygnatura jest nadawana przy pierwszym zapisie dokumentu. Oznacza to, że musimy wprowadzić dodatkową walidację, która uniemożliwi przejście jakąkolwiek ścieżką lub zapis przez przycisk w menu kontekstowym. w przypadku nie podawania wartości we wspomnianym atrybucie gdyż w przeciwnym razie tworzone sygnatury będą wybrakowane jeżeli użytkownik nie uzupełni tego pola.

 

 

2.1.        Numeracja dokumentów

Listę rzeczy, w obrębie których możemy numerować dokumenty możemy znaleźć w menu „Sygnatura”.

 

syg_p3

Poza pokazaną wcześniej numeracją w obrębie bieżącego roku, BPS oferuje także numerację w obrębie miesiąca, dni, atrybutów typu „Data i godzina” oraz numeracje ciągłą, bez uwzględniania daty.
Możliwość numeracji w obrębie atrybutów z datą, jest szczególnie przydatna przy procesach, gdzie data rejestracji dokumentu w workflow, nie zawsze musi odpowiadać np. dacie powstania fizycznego dokumentu.

Dobrym przykładem takiego procesu może być archiwum umów, gdzie początkowo chcemy zarejestrować wszystkie umowy, zawarte nawet na kilka lat przed wdrożeniem WEBCON BPS i jednocześnie chcemy żeby w sygnaturze była widoczna data zawarcia umowy.

Warto zaznaczyć, że wykorzystując taki atrybut do numeracji, możemy wybrać jednostkę czasu z podawanej daty, którą chcemy wykorzystać do numeracji (dzień, miesiąc, rok) oraz ewentualnie ustawić numerację w obrębie daty i spółki.

 

Poza okresami czasu, istnieje możliwość numeracji w obrębie spółek i loginów. Na krótki opis zasługuje pierwsza z tych opcji.

Jeżeli w BPS wykorzystywana jest funkcjonalność obsługi wielu spółek, pozwala nam to numerować dokumenty oddzielnie dla każdej z nich. Pozwala to zachować ciągłość numeracji w każdej ze spółek
i uniknąć sytuacji, że osoby mające dostęp do wszystkich dokumentów spółki A, nie wiedzą czym jest spowodowana luka w numeracji, podczas gdy te numery zostały przydzielone dokumentom zarejestrowanym w spółce B.

 

Numerację sygnatury można zdefiniować z autouzupełnianiem do określonej ilości znaków.
Oznacza to, że wszystkie numery będą poprzedzane zerami, tak żeby ich długość dopasować do wybranej długości. Przykładowo, jeżeli wybierzemy autouzupełnianie do 6 znaków i zarejestrujemy 15 z kolei dokument, jego numer to będzie 000015.

Wprawdzie w edytorze największa dostępna wartość autouzupełniania to „do 10 znaków”, ale modyfikując ten atrybut w trybie zaawansowanym, możemy ręcznie zwiększyć tą ilość aż do maksymalnie 20 znaków.

syg_p4

 

 

3. Wyszukiwanie dokumentów

Aby ułatwić użytkownikom odnajdywanie konkretnych dokumentów na podstawie ich sygnatur możemy zastosować 2 funkcjonalności:

  • Dodać na witrynie webpart „BPS Search Box – Szybkie wyszukiwanie”. Pozwala on od razu, bezpośrednio przejść do dokumentu, którego sygnaturę podamy.

syg_p5

  • Skonfigurować raporty SWE w ten sposób aby domyślnie było wyświetlane pole wyszukiwania po sygnaturze. Zaletą tego rozwiązania jest możliwość wyszukiwania dokumentów po częściowej sygnaturze – jak na poniższym przykładzie.

syg_p6

Aby uzyskać efekt jak na powyższym screenshot’cie należy w sekcji „Wyszukiwanie” zaznaczyć „Od razu pokazuj wyniki” i włączyć widoczność panelu wyszukiwania. W sekcji „Prezentacja danych i wyszukiwanie” dla atrybutu „[Systemowe] Sygnatura” należy zaznaczyć checkbox w kolumnie „Wyszukiwanie podstawowe”.

 

 

 

4. Dobre praktyki

  • Strukturę sygnatury należy bardzo dokładnie przemyśleć przed uruchomieniem produkcyjnym procesu. Wprawdzie istnieje możliwość edycji szablonu w dowolnym momencie, jednak nie jest to zalecane rozwiązanie.

Może spowodować zamieszanie wśród użytkowników systemu a także zaburzy ciągłość numeracji kolejnych sygnatur. Sygnatury, utworzonych już dokumentów nie będą mogły zostać zmienione w żaden sposób więc dokumenty w danym procesie nie będą miały jednolitego schematu.

 

  • Przed wyborem numeracji w obrębie roku, miesiąca lub dnia warto oszacować ile dokumentów może być w każdej z tych jednostek czasu rejestrowanych i na tej podstawie podjąć decyzję
    o sposobie zawężenia numeracji. Dla obiegu korespondencji, gdzie może być rejestrowanych kilkanaście dokumentów dziennie, najlepszym rozwiązaniem będzie numeracja w obrębie dnia lub miesiąca.
    Z kolei dla obiegu umów, których w roku będzie kilkadziesiąt i ich ilość nie będzie równomiernie rozłożona na przestrzeni 12 miesięcy, lepszym rozwiązaniem będzie numeracja w obrębie roku lub nawet numeracja ciągła.

 

  • Aby zachować krótką formę sygnatury, dobrą praktyką jest nadawanie obiegom i typom dokumentów akronimów nie dłuższych niż 3-4 znaki i ich używanie w definicji sygnatury zamiast pełnych nazw.

 

  • Numeracja ciągła, bez jakiejkolwiek innej informacji (jak nawet akronim procesu czy obiegu) prawie zawsze jest złym rozwiązaniem. Po pierwsze, dostając sam numer np. 00000765 nie dostajemy żadnych dodatkowych informacji o dokumencie (np. czy jest to dokument faktury czy wniosek o urlop) a po drugie będziemy mogli posiadać tylko jeden proces z takim sposobem numeracji – ponieważ sygnatura musi być unikalna w obrębie całego systemu, BPS nie zezwoli na rejestrację dokumentu z drugiego procesu o sygnaturze 00000001 jeżeli taki dokument już istnieje w innym procesie.

W niektórych procesach, gdzie zachodzi potrzeba nadania numeracji ciągłej, zawsze warto dodać do tej sygnatury jakiś unikalny element jak np. akronim procesu lub obiegu.

 

  • Wprawdzie sygnatura dokumentów w systemie jest unikalna i od strony technicznej może także służyć do wyszukiwania elementów w bazie danych, to jeżeli np. potrzebujemy wyświetlić w atrybucie typu „Tabela SQL” informacje z innego dokumentu to ze względów wydajnościowych powinien być używany numer ID dokumentu (WFD_ID) a nie sygnatura.

2 thoughts to “Sygnatury dokumentów w BPS”

  1. Czy jest możliwość ręcznego ustawienia numeru początkowego autonumeracji? Np. modyfikując jakieś pola w bazie.
    Chodzi o zintegrowanie nowego obiegu z już istniejącym systemem.

    1. Rejestrujesz obieg z przygotowanym schematem sygnatury.
      Następnie w tabeli WFElements edytujesz wpis dla utworzonego WFD_ID – pole wfd_signature oraz WFD_SignatureUniqNumber
      Rejestrując kolejny obieg otrzymasz następny numer.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *