Program umożliwia definiowanie pozycji SubMenu które będą wynikały z konfiguracji systemu np. utworzonych przez administratora skorowidzy. W przypadku gdy administrator dopisze nową pozycję skorowidza, program zbuduje automatycznie submenu uwzględniając nowy zapis.
Konfiguracja
Pozycję konfiguracji skorowidza definiuje się w analogiczny sposób jak zwykły statyczny zapis submenu, z tą różnicą że zamiast wskazywać konkretną transakcję do uruchomienia podajemy zapytanie SQL, która ma zwrócić listę pozycji. Lista ta będzie podstawą do zbudowania SubMenu, dlatego zapytanie to musi spełniać określone warunki.
- Zapytanie musi zwracać 4 kolumny
- NAME – unikalna identyfikator pozycji submenu np. kod, prx itp.
- TEKST – treść wyświetlana jako informacja dla użytkownika na ekranie
- TARGETURL – polecenia do przejścia (uruchomienia) określonej transakcji, po kliknięciu przez użytkownika wybranej pozycji submenu.
- IKONA – wskazenie jaki obrazek (zalecany rozmiar 24×24) ma być wyświetlony przy pozycji submenu
Przykład zapytania SQL budującego pozycje SubMenu
select kod AS NAME, opis AS TEKST, (’~/role_sys/x_grid.aspx?status=’+kod) as TARGETURL, IKONA from x_skorowidze WHERE (PRX = 'STA’) AND (KOD1 = 'CRMZD’) AND (AKTYWNE = 1) order by KOLEJNOSC, OPIS
W wyniku zapytania otrzymany listę:
0 | Planowane | ~/role_sys/x_grid.aspx?status=0 | ~/images_m/24×24/telephone.png |
1 | W trakcie realizacji | ~/role_sys/x_grid.aspx?status=1 | ~/images_m/24×24/user_telephone.png |
2 | Wykonane | ~/role_sys/x_grid.aspx?status=2 | ~/images_m/24×24/checks.png |
3 | Rozliczone | ~/role_sys/x_grid.aspx?status=3 | ~/images_m/24×24/cash_flow.png |
X | Anulowane | ~/role_sys/x_grid.aspx?status=X | ~/images_m/24×24/selection_delete.png |
Przykład zastosowania
StudioSystem ma zdefiniowany skorowidz statusów
Chcemy wyświetlić submenu zawierającą listę tych pozycji, tworzymy więc pozycję w konfiguacji SubMenu wprowadzając zapytanie:
select kod AS NAME, opis AS TEKST, (’~/role_sys/x_grid.aspx?refno=CRM_WIZYTY&status=’+kod) as TARGETURL, IKONA from x_skorowidze WHERE (PRX = 'STA’) AND (KOD1 = 'CRMZD’) AND (AKTYWNE = 1) order by KOLEJNOSC, OPIS
Po zapisaniu na liście parametrów dla dodanej pozycji wpisujemy identyfikator w kolumnie TypDok np. WIZ
Następnym krokiem jest dodanie pozycji menu głównego która uruchomi transakcję role_sys/sub_menu.aspx
Gotowe. Można przejeść do modułu użytkownika i wybrać pozycję menu, która wyświetli listę submenu zbudowaną dynamicznie na podstawie zapytania SQL