Transakcja pozwala na uruchamianie wybranej innej transakcji dodając do niej wartości zdefiniowanych parametrów przekazanych przez użytkownika.
Uruchamianie
Wywołanie transakcji x_run.aspx wymaga podania parametrów: kod, run.
Parametry params i refno są opcjonalne ich występowanie zależy od tego co ma być docelowo uruchomione.
Parametry
Podajemy parametry: kod=CPS1&run=../role_sys/x_cecha.aspx¶ms=prx|CPS1$caption|Plan sprzedaży&refno=
kod
unikalny symbol nazwy skorowidza RUN który definiuje kontrolki do wyświetlenia
run
wskazuje jaka transakcja ma być uruchomiona
params
przekazuje stałe parametry do uruchamianej transakcji „run”
wartości parametrów należy zastosować znaki, które będą zamienione: znak | zostanie zmieniony na =, znak $ zostanie zamieniony na &, znak * zostanie zamieniony na $
refno
przekazuje unikalny identyfikator wiersza tabeli dla którego uruchamiamy transakcję.
style
przekazuje formatowanie dla okna z kontrolkami, domyślne ustawienia mogą być dowolnie zmienione, np. ustawiając położenie, rozmiar itp.
margin:30px; margin-left:25%; background-color:#DFEDFF; border-style:solid; border-width:1px; border-color:lightsteelblue; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; max-width:700px; min-width:410px; width:50%;
możemy zmienić układ uruchamiając transakcję z parametrem np.
style=left:15%;right:15%; margin-left:0px; min-width:800px;position:relative;
script
Parametry script, scriptonload i scriptonready – umożliwiają dodanie własnego skryptu do transakcji j_insert_update.
role_sys/x_run.aspx?kod=FOLDERS&script=skrypt_do_x_run&scriptonready=MojaOnReady()&run=../role_adm/user_cfg.aspx
Zawartość formularza
Zawartość formularza, czyli kontrolki jakie pojawić się na nim mają definiujemy za pomocą skorowidza RUN
gdzie:
- KOD – unikalny identyfikator przekazywany przy uruchamianiu transakcji x_run.aspx
- RODZAJ KONTROLKI – określa rodzaj kontrolki umieszczanej na formularzu. Domyślnie TEKST pozwalający na wpisywanie dowolnego tekstu do parametru
- TEKST – dowolna wartość
- LIKE – dowolna wartość używana jako wzorzec. Wyszukiwane są te rekordy, które pasują do wzorca. Opis konfiguracji w rozdziale “Wyszukiwarka, a pole typu LIKE” poniżej
- NUMBER – wartości liczbowe – dokładny opis korzystania z pól typu NUMBER w osobnym rozdziale, “Wyszukiwarka, a pole typu NUMBER”, poniżej
- COMBO – wybór z listy, dla krótkich list słownikowych
- MULTISELECT- wybór z listy wielu wartości – konfiguracja taka sama jak pola typu COMBO (wyszukiwanie na zasadzie WHERE kolumna IN (‘wartosc1’, ‘wartosc2’, ‘wartosc2’) )
- COMBOFLY – wybór z listy wymaga wpisania poszukiwanej frazy, zwraca ograniczoną listę wyboru, ale odwołuje się do dowolnie dużej tabeli w bazie, przykład wybór asortymentu, kontrahenta.
- DATA – wybór z kalendarza
- ODDO – wybór dat z przedziału
- CHECKBOX – pole typu checkbox (null/true/false) – pole checkbox domyślnie zamalowane jest kwadracikiem, co zaznaczone, że nie chcemy filtrować według tego pola, gdy zaznaczymy “ptaszka” filtrujemy rekordy z wartością ustawioną na true, gdy pole nie jest zaznaczone (jest puste), filtrujemy rekordy z wartością ustawioną na false
- OPIS – tekst wyświetlany na formularzu przy kontrolce
- ZAPYTANIE DLA COMBO – wymaga podania zapytania za pomocą którego utworzona zostanie lista wyboru, np. dla COMBO: KOD, OPIS FROM x_skorowidze WHERE PRX=’RSL’ AND AKTYWNE=’1′ ORDER BY OPIS a dla COMBOFLY: TOP(10) NRIDASN, INDEKS + ‘ ‘ + NAZWAAS AS IND FROM knaso WHERE INDEKS + NAZWAAS LIKE ‘%$$SearchString%’ ORDER BY INDEKS
- NAZWA PARAMETRU – pod jaką nazwą wartość parametru ma być przekazana do transakcji docelowej
- MAX ILOŚĆ ZNAKÓW – określamy z ilu znaków może składać się wartość parametru, ustawienie 4 powoduje że użytkownik będzie mógł wpisać do 4 znaków.
- PARAMETRY – możliwość dodania innych parametrów do kontrolki, np. wpisując wymagane=’1′ spowodujemy że uruchomienie transakcji będzie możliwe jeżeli kontrolka został wypełniona. Parametr sswidth pozwala określić szerokość kontrolki, a dla typu DATA mindate=”-365″ maxdate=”0″ pozwalają ustalić przedział czasowy możliwy do wybrania.
W efekcie takiej konfiguracji po uruchomieniu transakcji x_run.aspx będziemy mieć następujący formularz:
Wiele parametrów = wiele kontrolek
Definiując w skorowidzu RUN wiele pozycji możemy powodować, że na formularzu będzie wiele kontrolek przekazujących wiele parametrów. Przykładowo wiele wierszy w tym jeden typu COMBO.
na formularzu będziemy mieć wiele kontrolek do wpisania:
Wyszukiwarka, a pole typu NUMBER
Kontrolka typu NUMBER umożliwia wyszukiwanie wartości numerycznych. W zależności od konfiguracji możemy wyszukiwać konkretne wartości, a także przedziały ograniczone z jednej lub z obu storn.
W celu konfiguracji należy wypełnić kolumnę Rodzaj kontrolki oraz podać odpowiednie Parametry
- Rodzaj kontrolki – w zależności od wartości tej kolumny będziemy wyszukiwać przedziałów liczb lub konkretnych wartości
- NUMBER – wyszukiwanie wartości równych (=)
- NUMBER> – wyszukiwanie wartości większych (>)
- NUMBER< – wyszukiwanie wartości mniejszych (<)
- NUMBER>= – wyszukiwanie wartości większych lub równych (>=)
- NUMBER<= – wyszukiwanie wartości mniejszych lub równych (<=)
- NUMBER<> – wyszukiwanie wartości różnych (<>)
- NUMBER>< – wyszukiwanie z przedziału “od – do”. W przypadku, gdy wypełniona zostanie tylko kontrolka “od”, a “do” zostanie pusta, wyszukiwanie zamieniane jest na “większe równe” (>=) podanej wartości. W przypadku, gdy wypełniona zostanie tylko kontrolka “do”, a “od” zostanie pusta, wyszukiwanie zamieniane jest na “mniejsze równe” (<=) podanej wartości.
- Parametry
- digits – parametr określający liczbę cyfr całości ile można wpisać – w przypadku braku parametru, domyślnie zostanie przyjęte 5 – np. digits=”3″
- decimaldigits – parametr określający liczbę cyfr po przecinku ile można wpisać – w przypadku braku parametru, domyślnie zostanie przyjęte 0 – np decimaldigits=”2″
- min – parametr określający minimalną wartość jaką można wpisać – w przypadku braku parametru, nie będzie minimalnej wartości – np. min=”-100″
- max – parametr określający maksymalną wartość jaką można wpisać – w przypadku braku parametru, nie będzie maksymalnej wartości – np. max=”999″
Wyszukiwarka, a pole typu LIKE
Aby wyszukanie odbywało się za pomocą wzorca kolumna Rodzaj kontrolki musi przyjmować jedną z trzech wartości:
- LIKE – wyszukane zostaną rekordy, które zawierają dany ciąg znaków (‘%tekst%’)
- LIKEL – wyszukane zostaną rekordy, które kończą się podanym ciągiem znaków (‘%tekst’)
- LIKER – wyszukane zostaną rekordy, które zaczynają się podanym ciągiem znaków (‘tekst%’)
Reszta konfiguracji taka sama jak w przypadku kontrolki typu TEKST
Wyszukiwarka, a pole typu ODDO
Ustawienie pola Rodzaj kontrolki na ODDO pozwala na wybranie przedziału dat. Jest to alternatywna rozszerzona opcja względem zwykłego wyboru daty który pozwala tylko na wybór konkretnej daty. Formularz wyświetla dwa pola. Wybranie daty tylko w jednym z nich powoduje filtrowanie od albo do tej daty, zależnie od wybranego pola.
- Parametry
- mindate=”X”
- maxdate=”X”
Oba jako argument przyjmują liczbę dni do wyświetlenia w kalendarzu. Liczba ujemna oznacza dni wstecz.
Wybór z listy COMBO
Użytkownik może nie tylko wpisywać dane tekstowe, ale możemy ograniczyć mu do listy wyboru za pomocą kontrolki COMBO.
W tym celu konfigurując pozycję słownika RUN wpisujemy w kolumnie Rodzaj Kontrolki wartość COMBO. Program umieści zamiast zwykłego pola do edycji listę rozwijaną na podstawie zapytania zwracającego listę wyboru.
Wartości listy mogą być odczytywane z bazy SQL lub ustalone w zapytaniu, np. chcąc dać wybór lat możemy w kolumnie Zapytanie dla COMBO wpisać:
* FROM (VALUES(‚2013′,’2013′),(‚2014′,’2014′),(‚2015′,’2015′),(‚2016′,’2016′)) AS tbl(id, opis)
W efekcie lista wyboru pozwoli użytkownikowi wskazać wartości lat od 2013 do 2016.
Przykład wykorzystania
Wyświetlenie listy folderów do ustawień uprawnień użytkownika
Skorowidz RUN zawiera pozycję z kodem FOLDERS, która ustawiona jest jako COMBO i zawiera następujące zapytanie:
UPPER(folder) AS FOLDER, UPPER(folder) AS FOLDER FROM [x_pliki] group by folder
W efekcie transakcja pozwala na wybór folderu którego uprawnienia chcemy edytować. Samo wywołanie transakcji jest następujące:
role_sys/x_run.aspx?kod=FOLDERS&run=../role_adm/user_cfg.aspx
Pola typu combo, a baza custom
Aby dane w kontrolkach combo, combofly i multiselect pochodziły z innej bazy niż baza domyślna, w kolumnie parametry należy dodać ssconnectio=”nazwa_bazy” np. ssconnection=”customConnectionString”
Przykład wykorzystania z x_grid.aspx
Lista opcji filtrowania rejestru reklamacji, uruchomienie transakcji x_grid.aspx
Pozycja zapytaniami typu TEKST i COMBO
KOD, OPIS FROM x_skorowidze WHERE PRX=’RSL’ AND AKTYWNE=’1′ ORDER BY OPIS
Nie ustawiamy pozycji jako wymagane, a wiec kolumna Parametry zostaje pusta, tak aby użytkownik mógł wpisać jeden lub więcej wartości.
uruchamiamy transakcję x_run.aspx?kod=DPREK&run=../role_sys/x_grid.aspx¶ms=widok|dprek3
W efekcie jak użytkownik wpisze czego szuka program uruchomi transakcję docelową ../role_sys/x_grid.aspx?widok|dprek3
do której doda parametry w zależności od tego co wybrał użytkownik, np. otrzymamy rejestr reklamacji dla kanału 1
Przykład wyboru daty dla rejestru GRID
Wyświetlając rejestr filtrowany wg dat program zawsze ustawia przedział wg zdefiniowanego przez administratora parametru ilości dni wstecz. Użytkownik może zmienić datę w rejestrze albo przed jego wyświetleniem za pomocą ustawionej transakcji x_run wskazać daty od kiedy i do kiedy mają być wyświetlane dokumenty.
W tym celu należy w skorowidzu X_RUN dodać pozycję np.
- RODZAJ KONTROLKI – DATA
- OPIS – DATA OD
- NAZWA PARAMETRY – DATAOD
- PARAMETRY – mindate=”-365″ maxdate=”0″ sswidth=’200′
W efekcie
Aby określić datę do kiedy należy dodać kolejną pozycję ustawiając ją w następujący sposób np.:
- RODZAJ KONTROLKI – DATA
- OPIS – DATA DO
- NAZWA PARAMETRY – DATADO
- PARAMETRY – mindate=”-365″ maxdate=”120″ sswidth=’200′
Przekierowanie na inną transakcję z odczytaniem danych
Transakcję x_run.aspx można wykorzystać do przekierowania na inną transakcję bez pytania użytkownika o dodatkowe parametry, za to można odczytać dowolną informację z dowolnej tabeli i taką informację przekazać do transakcji wynikowej.
Brzmi to skomplikowanie, ale zastosowanie jest następujące. W rejestrze dokumentów użytkownik w tabeli uruchamiając transakcję przekazuje identyfikator wiersza w postaci numeru referencyjnego (refno). Docelowa transakcja jednak oczekuje przekazania innej informacji (innego identyfikatora), która zapisana jest w innej kolumnie w tabeli. Za pomocą transakcji x_run.aspx możemy odczytać taką informację z bazy SQL i przekazać ją do transakcji którą chcemy uruchomić.
Parametry wymagane
- run – parametr wskazuje ścieżkę i nazwę transakcji do uruchomienia
- param – parametr przekazuje stałe wartości do docelowej transakcji, należy pamiętać, aby zamiast znaku = stosować znak |, a za miast znaku & stosować znak $
- tab – parametr określający nazwę tabeli z której ma być odczytana wartość
- kol – nazwa kolumny z tabeli przekazanej w parametrze tab
- id – nazwa kolumny będącą identyfikatorem wiersza tabeli, zwykle refno
- refno – parametr przekazuje wartość jaka ma być odszukana w kolumnie przekazanej jako id
Parametry opcjonalne
- order – pozwala określić warunek sortowania poszukiwanej informacji, znajduje zastosowanie, gdy w tabeli (tab) znajduje się wiele rekordów – kolumna id nie zwraca unikalnego 1 rekordu. Wówczas możemy chcieć otrzymać wartość z rekordu ostatnio dodanego do tabeli. W takim wypadku jako wartość parametru podajemy kiedy desc. Przykład uruchomienia:
/role_sys/x_run.aspx?run=/rdlc/wydruk_refno.aspx¶m=save|pdf$btnclose|1$ean|drrek$typdok|wysylka_dostawca$refno|&tab=drrek&kol=REFNO_DRREK&id=refno&order=kiedy desc&refno=;
Przykład zastosowania
W rejestrze reklamacji chcemy uruchomić wydruk zbiorczy, dla któeego pozycje są odczytywane wg kolumny NRWEWNETRZNY. W tym celu skorzystamy z transakcji x_run.aspx w następujący sposób
role_sys/x_run.aspx?run=/rdlc/wydruk_refno.aspx¶m=typdok|Wysyłka_dostawca$refno|&tab=dprek&kol=nrwewnetrzny&id=refno&refno=
W efekcie na ekranie użytkownika zostanie wyświetlona transakcja /rdlc/wydruk_refno.aspx?typdok=Wysyłka_dostawca&refno=
gdzie na końcu zapytania podstawiona zostanie wartość odczytana z kolumny nrwewnetrzny z tabeli dprek.
Parametr IFF
Uruchamiając transakcje x_run.aspx z parametrem iff wymuszamy działanie uruchamiające transakcję wynikającą z wyniku zapytania SQL do bazy.
Konfiguracja
W skorowidzu IIF ustawiamy dowolny kod, który będzie przekazany jako wartość parametru IIF, np, kod 001.
Dla tego kodu w kolumnie UWAGI wpisujemy zapytanie SQL, które zwróci jako wartość transakcję do uruchomienia.
Przykład zapytania:
SELECT TOP(1) CASE WHEN PRX='PRA' THEN '/role_sys/j_insert_update.aspx?kod=abc' WHEN PRX='DOS' THEN '/role_sys/j_insert_update.aspx?kod=xyz' ELSE '/role_sys/komunikat.aspx?kod=XXX' END FROM [knkon] WHERE NRIDODN=@REFNO
Powyższe zapytanie sprawdza wartość zapisaną w kolumnie PRX i w zależności od wyniku zostanie zwrócona inna transakcja do uruchomienia.
Zmienna @REFNO zostanie zastąpiona wartością parametru refno.
Inne zmienne do wykorzystania:
- @MAGAZYN
- @ODDZIAL
- @MPK
- @KTO – w zapytaniu należy parametr zapisać z apostrofami – ‘@KTO’
przykład 2:
SELECT TOP(1) CASE WHEN PRX='PRA' THEN '/role_sys/j_insert_update.aspx?kod=abc&refno=@REFNO' WHEN PRX='DOS' THEN '/role_sys/j_insert_update.aspx?kod=xyz' ELSE '/role_sys/komunikat.aspx?kod=XXX' END FROM [knkon] WHERE NRIDODN=@REFNO and oddzial=@ODDZIAL
Uruchomienie
Jako parametr uruchomienia podajemy kod skorowidza iif
np. uruchamiajac z grida
role_sys/x_run.aspx?iif=001&refno=
Atrybut enterrun
Dla kontrolek typu COMBO, COMBOFLY oraz TEKST możemy dodac atrybut enterrun=’1′, dzięki czemu wprowadzamy możliwość automatycznego wywołania polecenia URUCHOM bez konieczności klikania myszką w przycisk.
Atrybut dodajemy w polu PARAMETRY
W efekcie po wybraniu pozycji z kontrolki COMBO, COMBOFLY zostanie uruchomiona docelowa strona, w przypadku kontrolki typu TEKST uruchomienie następuje po kliknięciu w klawisz ENTER.
Czytaj więcej:
Raporty.aspx
Transakcja role_rap/raporty.aspx pozwala na podgląd wydruku lub generowanie plików z wynikami raportu w formacie XLS lub PDF. Uruchamiając transakcję należy podać parametry wymagane oraz można opcjonalne. Dodatkowe dowolne parametry przekazywane przy uruchomieniu transakcji zostaną przekazane jako wartości generowania raportu (parametry raportu przygotowanego w Report Builder). Parametry wymagane raport Parametr raport wskazuje na ścieżkę i nazwę pliku szablonu raportu jaki chcemy
Konfiguracja Transakcje SYS eang kody kreskowe raporty SQL reporting services
menu_skorowidz.aspx
Platforma StudioSystem zapewnia dużą elastyczność w zakresie analizy danych. Dzięki słownikom definiowanym przez użytkownika użytkownicy mogą definiować niestandardowe kategorie, aby szybko identyfikować i kategoryzować dane. Może to być pomocne w zawężaniu zestawów danych i identyfikowaniu trendów w dużych ilościach danych. Ponadto użytkownicy mogą również korzystać z platformy w celu zastosowania niestandardowych technik analizy do swoich
role_ank/wypelnij_ankiete.aspx
Transakcja umożliwia udzielenie odpowiedzi na ankietę przygotowaną transakcja role_ank/dodaj_ankiete.aspx Parametry refno i edycja Parametr refno przyjmuje wartość klucza nagłówka ankiety (ankiety_n.REFNO) w przypadku, gdy chcemy dodać nowe odpowiedzi do danej ankiety. W przypadku, gdy chcemy edytować wcześniej wypełnioną ankietę parametr refno musi przyjąć wartość klucza głównego tabeli, w której zapisywane są odpowiedzi (dpank.REFNO) dodatkowo powinien pojawić się parametr edycja=1. Przykłady Nowe odpowiedzi: ..role_ank/wypelnij_ankiete.aspx?refno=REFNO_Z_TABELI_ANKIETY_N Edycja odpowiedzi: ..role_ank/wypelnij_ankiete.aspx?edycja=1&refno=REFNO_Z_TABELI_DPANK widok Transakcja
x_delete.aspx
Usuwanie danych z bazych jest możliwe za pomocą transakcji x_delete.aspx. Menu UruchamianieParametrykodrunparamsrefno stylescriptZawartość formularzaWiele parametrów = wiele kontrolekWyszukiwarka, a pole typu NUMBERWyszukiwarka, a pole typu LIKEWyszukiwarka, a pole typu ODDOWybór z listy COMBOPrzykład wykorzystaniaPola typu combo, a baza customPrzykład wykorzystania z x_grid.aspxPrzykład wyboru daty dla rejestru GRIDPrzekierowanie na inną transakcję z odczytaniem danychParametry wymaganeParametry opcjonalnePrzykład zastosowaniaParametr IFFKonfiguracjaUruchomienieAtrybut enterrun Transakcja x_delete.aspx
x_foto.aspx
Uniwersalna transakcja x_foto.aspx pozwala na dołączanie zdjęć do danego rekordu w bazie. Parametry hddpictures – parametr opcjonalny – nazwa folderu, do którego będą uploadowane zdjęcia np. APP_ZDJECIA (w przypadku braku tego parametru upload odbywa się do katalogu “App_Foto”refno= – parametr pod który zostanie podstawiony numer referencyjny wiersza, dla którego dodajemy zdjęciadelete=1 – podanie parametru delete z wartością