Programowanie transakcji j_insert_update za pomocą javascript pozwala na sterowanie zachowaniem i wykonywaniem dowolnych dodatkowych zadań, dzięki napisaniu własnych skryptów i ich dołączaniem do transakcji. Dołączony plik *.js zawierający zestaw funkcji pozwala na ich selektywne uruchamianie w zależności od zdarzenia. Są jednak pewne zadania, które programista chciałby (albo zmuszony jest) uruchamiać natychmiast przy ładowaniu (tworzeniu) strony lub zaraz po jej zakończeniu, gdy strona jest gotowa do wyświetlenia w oknie przeglądarki.
Niniejszy artykuł opisuje możliwości konfiguracji i zastosowania automatycznie uruchamianych funkcji przy zdarzeniach OnLoad (przy ładowaniu strony) i OnReady (po zakończeniu ładowania i zgłoszenia gotowości do jej wyświetlenia, załadowaniu wszystkich obiektów na stronie).
Parametry
W celu przekazania informacji jaka funkcja ma zostać uruchomiona należy przy uruchamianiu transakcji j_insert_update.aspx przekazać odpowiednie parametry opcjonalne:
scriptonload
Parametr scriptonload przekazuje nazwę funkcji jaka ma być uruchamiana (wykonana) natychmiast przy ładowaniu strony. Przykład wywołania:
j_insert_update.aspx?scriptonload=MojaOnLoad
scriptonready
Parametr scriptonready przekazuje nazwę funkcji jaka ma być uruchamiana (wykonana) natychmiast przy zakończeniu ładowania strony. Przykład wywołania:
j_insert_update.aspx?scriptonload=MojaOnReady
Prosty przykład zdarzenia scriptonload
Chcemy za pomocą JQuery zmienić szerokość lewego panelu na 400 pikseli, którego domyślna szerokość to 200 pikseli, w pliku dołączanym definiujemy więc funkcje, która lewy panel o nazwie ssLeft zmieni jej właściwość:
function MojaOnLoad() { $('#ssLeft').jqxSplitter({ panels: [{ size: 400, collapsible: false }, { collapsible: false }] }); }
W konfiguracji uruchomienia transakcji dodajemy parametry uruchomienia wskazujące plik ze skryptem dołączany ../role_crm/crm_knkon oraz wskazujemy jaka funkcja ma zostać uruchomiona MojaOnLoad:
script=../role_crm/crm_knkon&scriptonload=MojaOnLoad()&refno=CRM_INS_KNKON&return=ZamknijOkno&nridodn=
Użytkownik po kliknięciu na polecenie edycji kartoteki kontrahenta otrzyma następujący efekt:
Prosty przykład zdarzenia scriptonready
Chcemy, aby po załadowaniu strony kontrolka NAZWA KONTRAHENTA (NAZWA) została wpisana informacja – zachęta – “Podaj unikalną nazwę kontrahenta”
ustawiamy więc parametry uruchomienia transakcji j_insert_update.aspx
script=../role_crm/crm_knkon&scriptonready=MojaOnReady()&refno=CRM_INS_KNKON&return=ZamknijOkno&nridodn=
w następujący sposób:
W efekcie po uruchomieniu przez użytkownika transakcji zostanie wykonana funkcja MojaOnReady znajdująca się w pliku role_crm/crm_knkon.js
W kolejnym kroku przygotowujemy skrypt MojaOnReady, którego zadaniem będzie ustawienia właściwości tzw placeholder, czy tekst jaki będzie wyświetlany tylko gdy pole jest puste, tekst stanowić ma dla użytkownika podpowiedź co należy w danym polu wpisać.
Sprawdzamy jak nazywa się kontrolka której chcemy zmienić właściwość, jest to kontrolka NAZWA
W naszym pliku crm_knkon.js umieszcamy więc funkcje MojaOnReady w następujący sposób:
function MojaOnReady() { $("#NAZWA").attr("placeholder", "Podaj unikalną nazwę kontrahenta"); }
i sprawdzamy działanie, uruchamiając program
Kontynuując możemy ustawić wartość placeholder dla pola nazwa skrócona zmieniając funkcje:
function MojaOnReady() { $("#NAZWA").attr("placeholder", "Podaj unikalną nazwę kontrahenta"); $("#SKROCO").attr("placeholder", "Akronim klienta"); }
W efekcie otrzymamy
Podsumowanie
Za pomocą parametrów scriptonload oraz scriptonready możemy uruchamiać automatycznie wskazane funkcje, które będą wykonywać dowolne proste jak i zaawansowane skrypty java, zmieniać wygląd, sposób działania formularza. Zakres zmian jest prawie nieograniczony i zależy od umiejętności programisty i jego pomysłowości (i znajomości studiosystem, javascript i JQuery).
W kolejnych artykułach przykłady bardziej zaawansowane, pozwalające na dynamiczne działania, zmiany i obliczenia, a także odczyt i zapis danych w bazie SQL z wykorzystaniem WebService.
Czytaj więcej:
j_insert_update – zaawansowane programowanie
Transakcja j_insert_update to niezwykle elastyczne rozwiązanie pozwalające na manipulowanie danymi do zapisu i aktualizacji danych w bazie SQL Server. Konfigurując szablon można swobodnie zaprojektować co i w jaki sposób chcemy zapisywać. Niniejsza dokumentacja poszerza opis funkcjonalny transakcji j_insert_update o dodatkowe możliwości programowania w java script dowolnych funkcji i ich uruchamianie w określonych sytuacjach (zdarzeniach). Opis dedykowany
j_insert_update – zaawansowane programowanie cz. trzecia
Możliwość ukrywania i pokazywania obiektów to jedna z najpotężniejszych funkcji platformy StudioSystem. Dzięki tej funkcji programiści mają możliwość tworzenia niestandardowych doświadczeń użytkownika, które są zarówno wciągające, jak i intuicyjne. Wykorzystując tę funkcję, programiści mogą tworzyć formularze, które są zarówno atrakcyjne wizualnie, jak i wysoce funkcjonalne.
j_insert_update – zaawansowane programowanie – dynamiczne podpowiedzi
Platforma StudioSystem umożliwia również programistom tworzenie formularzy, które można łatwo udostępniać i ponownie wykorzystywać. Oznacza to, że programiści mogą tworzyć formularze, które są współużytkowane przez wiele projektów, co ułatwia zachowanie spójności w szeregu aplikacji.
j_insert_update – zaawansowane programowanie – pozycje dokumentu cz. II
Zaawansowane języki programowania, takie jak C# i Java, dają programistom możliwość tworzenia zaawansowanych aplikacji z szeroką gamą funkcji i możliwości. Te języki są potężne i umożliwiają tworzenie aplikacji, które mogą obsługiwać duże ilości danych i zapewniają solidne interfejsy użytkownika. Deweloperzy mogą również korzystać z zaawansowanych funkcji, takich jak programowanie obiektowe i wątkowanie, co pozwala na
j_insert_update – zaawansowane programowanie – wstawianie tabeli
StudioSystem zapewnia również użytkownikom zaawansowane możliwości programistyczne. Jego język skryptowy oparty jest na JavaScript i ułatwia tworzenie złożonych aplikacji. Dodatkowo platforma oferuje obszerną dokumentację i samouczki, które ułatwiają naukę języka i szybkie rozpoczęcie pracy.