Pewne informacje zapisywane w systemie mogą być z natury rzeczy gromadzone w układzie hierachicznym. Doskonałym narzędziem do prezentowania takich danych w programie jest transakcja wyświetlająca zależności za pomocą tzw. “drzewka”.
Uniwersalna transakcja j_tree.aspx zastąpiła poprzednią wersję x_tree.aspx, pozwala na wyświetlanie danych na zasadzie od ogółu do szczegółu. Dane są gromadzone wg tzw nazw folderów, jednak sam identyfikator folderu może ale nie musi oznaczać folderu w rozumieniu gromadzenia plików na dysku komputera.
“Drzewko” reprezentuje układ zależności dowolnych informacji i może stanowić doskonałe narzędzie nawigacyjne do uruchamiania innych transakcji, zastępując tradycyjne submenu, które budowane jest na zasadzie “płaskiej” zależności.
Ilość zagnieżdżeń w drzewku może być w zasadzie dowolna.
Konfiguracja
Transakcja j_tree.aspx ma za zadanie wyłącznie wyświetlać pozycję i nawigować do wskazanych transakcji. Konfiguracja i zarządzanie strukturą i pozycjami drzewka realizowana jest za pomocą dedykowanej transakcji j_tree_admin.aspx.
Po wybraniu dowolnej pozycji w drzewku wyświetlone w prawym oknie zostaną szczegóły danej pozycji.
Możemy zmienić nazwę pozycji, zmienić jej położenie w strukturze drzewa (wskazując folder nadrzędny PARENT), podać link do pliku wyświetlanego jako ikona oraz wskazać transakcję jaka ma być uruchomiona, gdy użytkownik kliknie na pozycję z drzewka. Jeżeli pole transakcji jest puste to kliknięcie (wybranie) pozycji drzewka nie uruchamia żadnej transakcji.
Dopisywanie nowych folderów
Budowa struktury drzewka polega na dodawaniu nowych “gałęzi” i folderów. W górnym pasku mamy do dyspozycji polecenia pozwalające na dopisywanie folderów głównego poziomu (root) lub podfolderów oraz usuwanie istniejących.
Skorowidze
Formularz zarządzania folderami – dopisywania i edycji korzysta ze słowników jako listy wyboru ikonek oraz transakcji.
Lista ikon
Dostępna lista ikon wynika z konfiguracji słownika z kodem DRZIK
Lista transakcji
Dostępna lista transakcji wynika z konfiguracji słownika z kodem DRZTR
Uruchomienie
Transakcja wymaga przy uruchomieniu pliku j_tree.aspx i podania parametru kod. Parametr kod odwołuje się do pozycji skorowidza typ DRZ.
Parametry opcjonalne
expand
Parametr expand z wartością 1 spowoduje, że program automatycznie po załadowaniu transakcji rozwinie wszystkie elementy drzewka.
np. j_tree.aspx?kod=DOK_NAR&expand=1
Skorowidz DRZ
Skorowidz zawiera zdefiniowane drzewka kody drzewek wraz z zapytaniem SQL jakie ma zwracać pozycje drzewa. Może to być dowolne zapytanie SQL spełniające pewne założenia co do zwracanych informacji. Standardowo zapytania są do tabeli KNFLD, która dedykowana jest do przechowywania danych hierachicznych folderów, ale można zaprojektować zapytanie do innej tabeli, pamiętając jednak, że moduł konfiguracji (projektowania) j_tree_admin.aspx działa tylko i wyłącznie z tabelą KNFLD.
Kolumna kod zawiera kod jaki należy przekazać uruchamiając transakcję j_tree.aspx
Zapytanie SQL
Zapytanie musi zwracać kolumny o określonej nazwie:
- ID – identyfikator pozycji drzewka, wartość unikalna
- FOLDER – wyświetlana jawnie nazwa pozycji drzewka
- Zapytanie SQL ROOT od 2020-10-23 miejsce na podanie parametrów przekazywanych do _code_sql np. 03
- Zapytanie SQL PARENT PARENTID –
identyfikator pozycji nadrzędnej, jeżeli pozycja ma być na najwyższym poziomie (tzw. ROOT) to wartość zwraca musi być -1od 2020-10-23 miejsce na podanie identyfikatora zapytania w tabeli _code_SQL, np. 729EA8E3-0587-43E7-B93A-7FB9DFFE836F. - VALUE – wartość przechowywana w danej pozycji drzewka i wykorzystywana do uruchomienia transakcji po kliknięciu przez użytkownika. Wskazuje jaki plik ma być uruchomiony po wybraniu pozycji. Jeżeli VALUE jest puste to kliknięcie nie powoduje żadnej reakcji, zastosowanie dla gałęzi drzewa do rozwijania szczegółów, gdy samo rozwinięcie nie ma skutkować otwarciem transakcji.
- ICON – wskazanie pliku jaki ma być wyświetlony w formie ikonki po lewej stronie tekstu, rozmiar pliku wyświetlanego to 16×16 pikseli.
Przykład zapytania
[NRIDFLD] as id, [FOLDER] as text, [PARENT] as parentid, (REPLACE(TRANSAKCJA,’@folder’, folder )) AS value, IKONA AS icon FROM [knfld] WHERE AKTYWNE=1 order by parent, folder
W powyższym przykładzie wartość VALUE jeżeli zawiera tekst @folder to zostanie podstawiona pod niego faktyczna opis wybranej pozycji drzewka. Przykładowo wybierzemy transakcje z następującym wpisem:
/role_sys/x_grid.aspx?refno=DMS_DPDOK&TYTUL=@FOLDER
W takim wypadku wartość @FOLDER zostanie zastąpiona tekstem jaki przypisany jest do nazwy pozycji drzewka, faktycznie więc uruchomiona transakcja będzie mieć inną wersję. Jeżeli użytkownik kliknie na pozycję drzewka, która wyświetla tekst UMOWY ZAKOŃCZONE, to zostanie uruchomiona transakcja:
role_sys/x_grid.aspx?refno=DMS_DPDOK&TYTUL=UMOWY ZAKOŃCZONE
jeżeli klinie na pozycje PRODUKCJA, to uruchomi transakcje:
role_sys/x_grid.aspx?refno=DMS_DPDOK&TYTUL=PRODUKCJA
Przykład zapytania do innej tabeli
Transakcja może działać na podstawie dowolnego prawidłowego zapytania SQL np. odczyt struktury z tabeli KNKON
upper([NRIDODN]) as id, [SKROCO] as text, upper([NRIDPRZ]) as parentid, case when prx=’PRA’ THEN (‘/role_sys/x_details.aspx?refno=DTS_KNKON&nridodn=’ + upper(NRIDODN)) ELSE ” END AS value, ” AS icon FROM knkon WHERE (ROLASYS = ‘CRM’) and AKTYWNE=1 AND (PRX IN (‘ODD’, ‘DEP’, ‘PRA’)) order by NRIDPRZ, SKROCO
W efekcie może się wyświetlić drzewo zależności.
Przykład zapytania z wyróżnieniem poziomów i dodaniem ikonek
Możemy modyfikując zapytanie spowodować wyświetlenie treści poszczególnych pozycji za pomocą czcionki pogrubionej lub z ikonką. Poniższe zapytanie spowoduje taki efekt wizualny
upper([NRIDODN]) as id, case when prx=’PRA’ THEN [skroco] else ‘<b>’ +[SKROCO] + ‘</b>’ end as text, upper([NRIDPRZ]) as parentid, case when prx=’PRA’ THEN (‘/role_sys/x_details.aspx?refno=DTS_KNKON&nridodn=’ + upper(NRIDODN)) ELSE ” END AS value, case when prx=’PRA’ THEN ‘/images_v/16×16/businessman.png’ ELSE ” END AS icon FROM knkon WHERE (ROLASYS = ‘CRM’) and AKTYWNE=1 AND (PRX IN (‘ODD’, ‘DEP’, ‘PRA’)) order by NRIDPRZ, SKROCO
Pozycja dla których wartość w kolumnie PRX nie jest równa PRA (czyli pozostałe poziomy niż pracownicy) będą wyświetlane czcionką pogrubioną, natomiast pracownicy będą mieść wyświetlaną ikonkę w postaci pliku graficznego /images_v/16×16/businessman.png
Czytaj więcej:
decrypt.aspx
Transakcja decrypt.aspx jest transakcją pozwalającą na odszyfrowanie zapisanych w bazie, przy pomocy transakcji j_insert_update.aspx, zaszyfrowanych danych – np. haseł. Parametry transakcji Parametry jakie musimy przekazać podczas wywołania transakcji: tabela – parametr identyfikujący tabelę, w której znajdują się zaszyfrowane danekolumna – kolumna, w której znajdują się zaszyfrowane daneklucz – klucz domyślny tabelirefno – ostatni parametr, identyfikujący wiersz tabeli bazy
j_files.aspx
Aplikacja online Standardowa transakcja role_sys/j_files.aspx przeznaczona do wyświetlania i zarządzaniem plikami (dokumentami) po stronie serwera. Jeżeli uruchomimy transkacje bez wskazania docelowego folderu to program przyjmuje jako folder App_Zal. Drzewko po lewej stronie odpowiada za strukturę katalogów na dysku, natomiast po prawej stronie wyświetlana jest lista plików znajdująca się we wskazanym folderze. Kliknięcie na przycisk pliku powoduje otwarcie
j_xml.aspx
Transakcja j_xml.aspx to transakcja pozwalająca na eksport wybranych danych z bazy do pliku XML. Wskazanie danych do eksportu Do wskazania danych, które mają zostać wyeksportowane służy skorowidz XML Kolumny skorowidza AktywneKod – służy do identyfikacji zdefiniowanego zapytania przy wywołaniu transkacjiKolumny – kolumny, podane po przecinku, które mają zostać wyeksportowaneTabela – nazwa tabeli, z której ma nastąpić eksportWarunek – warunek
showdatafromsql.aspx
Program magazynowy na androida Prezentowanie danych zapisanych w bazie SQL. Parametry Transakcja wymaga podania parametrów za pomocą, których program odczyta dane z bazy SQL i wyświetli na formularzu. tabela Wskazuje na nazwę tabeli z której mają być pobrane dane kolumna Wskazuje na nazwę kolumny w tabeli where Przekazuje warunek filtrowania, który pozwala zidentyfikować wiersz w tabeli. Przykład uruchomienia role_sys/showdatafromsql.aspx?tabela=dpdok&kolumna=uwagi&where=refno= W połączeniu z poleceniem javascrit wyświetlającym okno
x_zalaczniki.aspx
Transakcja x_zalaczniki.aspx umożliwa dołączenie zączników takich formatach jak .docx .xlsx .pptx .pdf .7z .bmp .cdr .chm .dat .dwg .gif .html .jpg .png *.ppsx .psd .zip .rar. Wywołanie transakcji Transakcja najczęściej wywoływana jest z poziomu TOOLBARMENU lub jako zakładka dopisania dokumentu, czy kartoteki. Przykład wywołania transakcji: ../role_sys/x_zalacznik.aspx?refno= Podgląd Aby uruchomić transakcję x_załaczniki.aspx w trybie do podblądu należy dodać parametr insert=0Przykład wywołania transakcji: ../role_sys/x_zalacznik.aspx?insert=0&refno=