Czym są gniazda rozszerzeń?
W tym rozdziale znajdziesz najważniejsze informacje na temat gniazd rozszerzeń w Wapro Anywhere - czyli rozwiązaniu umożliwiającemu rozszerzenie standardowej funkcjonalności aplikacji wraz z tabelami dodatkowymi.
Gniazda rozszerzeń można zdefiniować jako miejsca w programie, które umożliwiają automatyczne wywoływanie logiki rozszerzających standardową funkcjonalność programu. Rozszerzenie może być realizowane jako:
- wyswietlenie komunikatu lub pytania dla użytkownika
- uruchomieniu procedury SQL, która może zmodyfikować dane w bazie danych lub zwrócić do aplikacji dane
- uruchomieniu własnej tabeli dodatkowej, w której użytkownik może wprowadzić dane
- uruchomieniu własnej aplikacji typu exe (za pośrednictwem Wapro Interkonektor)
Gniazda rozszerzeń mają strukturę drzewiastą i wykonywane są "od góry do dołu" w zależności od warunków, struktury oraz aktywności gniazd.
Gniazda działają na poziomie całej aplikacji co oznacza, że w przypadku współdzielenia bazy przez wiele firm w ramach jednego konta, dla każdej firmy użytkownicy w trakcie pracy napotkają taką samą logikę działania gniazda.
Nazwy gniazd rozszerzeń odzwierciedlają zdarzenia, jakie zachodzą podczas pracy z programem (przykładowo gniazdo po zatwierdzeniu dokumentu handlowego, przed dodaniem pozycji dokumentu itd.). Program, realizując standardowe operacje, gdy dochodzi w kolejności wykonania do gniazda rozszerzeń, rozpoczyna analizę tego, co znajduje się w gnieździe i wykonuje moduły rozszerzające, które podpięto wcześniej do tego gniazda. Mechanizm ten umożliwia automatyczne wywoływanie własnych procedur SQL, modułów wykonywalnych, generowanie komunikatów, warunkowe wywoływanie funkcji itp.
Funkcjonalność gniazd rozszerzeń przypomina dostępne w systemie Operacje dodatkowe, różnica polega na tym, iż automat wywołujący procedury robi to bez potrzeby ingerencji użytkownika.
Za pomocą instrukcji w gnieździe możemy również sterować zachowaniem programu. Możemy zadać pytanie użytkownikowi i wykonać moduł rozszerzeń w zależności od jego decyzji. Można również sprawdzić wartość określonych parametrów i w zależności od wyniku sprawdzenia podjąć lub przerwać dalsze wykonywanie sekwencji zdarzeń w programie. Można również zablokować wykonanie standardowych funkcji programu lub też ominąć ich wykonanie w sposób niewidoczny dla użytkownika tzn. zrealizować własną procedurę postępowania zamiast wbudowanej w program.
W dalszej części rozdziału opisane zostały przykładowe zastosowania, jakie można zrealizować za pomocą gniazd rozszerzeń. Możliwości wykorzystania gniazd rozszerzeń ograniczone są jedynie wyobraźnią użytkownika. Program Wapro Anywhere można wzbogacić o elementy, takie jak:
- serwisu maszyn i urządzeń,
- wypożyczalni,
- prowadzenia i rozliczania projektów.
.... i wiele innych zastosowań wynikających z potrzeb użytkowników.
W przypadku pracy hybrydowej na wersji aplikacji Wapro Anywhere (wersja HTML) oraz Wapro Mag (wersja desktop) gniazda wykonywane są niezależnie od siebie wg definicji wprowadzonych niezależnie w poszczególnych typach aplikacji. Architektura poszczególnych rodzajów aplikacji dostępowych różni się od siebie, dodatkowo aplikacje przeglądardkowe nie mają niektórych możliwości w systemie operacyjnym tak jak wersja EXE.