Triggery obiektów biznesowych
W zakresie podejmowania zadanych akcji na zmianach w obiektach biznesowych eDokumenty implementują doskonały wzorzec projektowy Obserwator.
Aby obserwować obiekty biznesowe i wykonywać akcje na zadanych zmianach, można dodawać do katalogu classes/Log/observers własne klasy, które realizują interfejs LogObserver i dla zadanych zdarzeń podejmują jakieś akcje.
W załączniku podano przykładową klasę ExampleLogObserver, która posiada opisane wszystkie metody do "badania" zdarzenia w systemie i pobrania interesujących nasz szczegółów.
Istotne jest to, że aby obserwator się uruchomił musi on posiadać swojego loga (lista poniżej) w systemie oraz musi zajść jeden z dwóch warunków dla zdarzeń:
- musi zostać zalogowany dowolny event typu dodanie, usunięcie, załatwienie (lista typów eventów dostępna do pobrania w klasie ExampleLogObserver)
- nastąpiła zmiana w danych (kolumnach) danego obiektu logującego (nie wszystkie kolumny są obserwowane lista kolumn do pobrania dostępna w ExampleLogObserver)
Na podstawie klasy ExampleLogObserver należy utworzyć własną np. MyContactLogObserver.inc w której określimy warunki wykonania się oraz to co ma zrobić.
W klasie ExampleLogObserver został umieszczony szczegółowy opis możliwości oraz sposób na pobranie wszystkich kategorii zmian oraz obserwowanych kolumn.
Przykład 1:
Po wprowadzeniu nowego kontrahenta ustawiamy mu wartość cechy na X.
Lista obiektów wspierających obserwatory
- Contact - klient
- Address - adres
- ContactPerson - osoba kontaktowa
- Document - dokument
- Process - sprawa
- Product - produkt
- Event - zdarzenie
- File - załącznik
- KnowledgeBase - artykuł bazy wiedzy
- Group - grupa
- OrganizationUnit - jednostka organizacyjna
- User - konto użytkownika
- BSConnect - zdarzenia podsystemu do integracji
- EmailAccount - konto pocztowe
- Procedure - procedura
- Field - zmiana uprawnień do pól formularzy
- Report - raport
- Resource - zasób
- System - brak użycia zarezerwowana nazwa
- CREGISTER_ENTRY - wpis w rejestrze
Załączniki
- NewContactLogObserver.inc (1.8 KB) - dodany przez JP 12 years temu.
-
MRDDecreeDocumentsObserver.inc
(3.3 KB) - dodany przez JP
9 years temu.
Obserwator dekretacji dokumentu
- ExampleLogObserver.example (3.3 KB) - dodany przez TS 9 years temu.