StudioSystem zapewnia również potężne narzędzia do debugowania, które pozwalają programistom szybko identyfikować i naprawiać błędy. Dzięki temu programiści mogą znajdować i rozwiązywać problemy w kodzie, zanim staną się one większymi problemami. Ponadto platforma obsługuje różnorodne frameworki i technologie programistyczne, umożliwiając programistom korzystanie z najbardziej wydajnych i efektywnych narzędzi do tworzenia aplikacji.
W poprzednim artykule opisałem metodę wykorzystania transkacji j_insert_update.aspx do przygotowania formularza dopisywania pozycji dokumentu. Poniższy artykuł jest kontynuacją poprzedniego i opisuje dodatkowe zmiany w projektowaniu formularza.
W poprzednim artykule opisałem jak stworzyć formularz taki jak ten:
Wyświetlanie tabelki od lewej krawędzi
Dane na formularzu umieszczane są w dwóch kolumnach, lewa to opis (caption) danej kontrolki, w drugiej kolumnie kontrolka. W związku z tym opis Kontrahent, Asortyment, Ilość itp. są po lewej stronie ze stałą szerokością. W formularzu jak powyżej możemy chcieć, aby tabela była wyświetlana od lewej strony, by zapełnić wolne miejsce. Zrealizować to możemy zmieniając szerokość opisu (który w tym wypadku jest pusty, bo w konfiguracji kolumnie tytuł wpisałem znak -) dodając w funkcji uruchamianej onLoad na polecenie zmiany szerokości obiektu po lewej stronie tabelki (obiekt jest niewidoczny dla użytkownika). Identyfikator obiektu to słowo caption + zdefiniowana nazwa kontrolki, przykładowo kontrolkę do wyświetlania tabeli nazwałem TABELA, tak więc obiekt do zmiany szerokości identyfikuję jako captionTABELA
Dodaję więc polecenie ustawiające szerokość na 10 pikseli:
$('#captionTABELA').css('width', '10px');
Cała funkcja wygląda teraz tak:
function SsOnLoad() { $('#BTN_DODAJ').html("<span id='btnDodaj' onclick='return btnDodaj()' class='art-button art-buttonBlue' style='width: 200px; '>Dodaj</span>"); UstawDphanTable('TABELA'); $('#captionTABELA').css('width', '10px'); }
A dla użytkownika w programie:
Podział formularza na zakładki
Wywołując transakcję usuwam parametr ustawiający lewy panel na 0 pikseli, teraz uruchamiam z parametrami:
script=../role_crm/crm_dphan&scriptonload=SsOnLoad()&scriptonready=SsOnReady()&kodtransakcji=CRM_INS_DPHAN&refno=
W efekcie otrzymuję widoczny panel po lewej stronie z nazwą jednej zakładki
Zakładka nagłówek
Zmieniam nazwę zakładki dla pola kontrahent na Nagłówek:
W efekcie zmiany otrzymam nową zakładkę w której znajdzie się kontrolka wyboru kontrahenta
Pozostałe kontrolki program umieścił w zakładce pozycje
Ustawienie w zakładce nagłówek dodatkowych kontrolek:
- Miejsce dostawy
- Termin realizacji
- Opis
W efekcie otrzymujemy
Konfiguracja
Całość ustawień prezentuje poniższa tabela:
NRIDODN
W kolumnie zapytanie dla combo
TOP(20) UPPER(NRIDODN), SKROCO + ' (' +MIEJSCOWOSC + ')' AS OPIS FROM knkon WHERE ROLASYS=@ROLASYS AND (SKROCO + MIEJSCOWOSC LIKE '%$SearchString%') and (AKTYWNE = 1) ORDER BY SKROCO
W kolumnie parametry
ssplaceholder='Nazwa kontrahenta lub miejscowość (min 2 znaki)'
NRIDCRM
W kolumnie zapytanie dla combo
upper(NRIDCRM) AS NRIDCRM, NAZWA FROM KNCRM WHERE PRX='MDN' AND NRIDODN=$SearchString AND AKTYWNE=1 ORDER BY NAZWA
W kolumnie parametry
ssparentcombo="NRIDODN" ssselect="upper(NRIDCRM) AS NRIDCRM, NAZWA FROM KNCRM WHERE PRX='MDN' AND NRIDODN=$SearchString AND AKTYWNE=1 ORDER BY NAZWA"
NRIDASN
W kolumnie zapytanie dla combo
TOP(20) NRIDASN, INDEKS + ' ' + NAZWAAS AS INDKES FROM knaso WHERE (INDEKS + NAZWAAS LIKE '%$SearchString%' ) AND (AKTYWNE = 1) ORDER BY INDEKS
W kolumnie parametry
ssplaceholder='Indeks lub nazwa artykułu (min 2 znaki)'
Czytaj więcej:
_CODE_SQL MAW
Idea wykorzystania tabeli _code_sql dla MAW ogranicza się do zabezpieczenia bazy danych i zapytań przed dostępem dla użytkowników aplikacji www i Android. Wykorzystywanie unikalnych identyfikatorów UID po stronie klienta i przeniesienie logiki biznesowej na stronę serwera wydaje się obecnie najlepszym rozwiązaniem pod kątem bezpieczeństwa.
_CODE_SQL PAL
Idea wykorzystania tabeli _code_sql dla PAL ogranicza się do zabezpieczenia bazy danych i zapytań przed dostępem dla użytkowników aplikacji www i Android. Wykorzystywanie unikalnych identyfikatorów UID po stronie klienta i przeniesienie logiki biznesowej na stronę serwera wydaje się obecnie najlepszym rozwiązaniem pod kątem bezpieczeństwa. Rola PAL UID: 0149EBED-41A0-4CF7-BF36-9CB02690157B Rodzaj kontrolki: Tabela TYTUŁ: Skorowidz DrawIo PRX=DRAW Zapytanie: SELECT top(1) UPPER(ID_DPMAG), RODZAJ, SALDO,
_CODE_SQL SYS
Idea wykorzystania tabeli _code_sql ogranicza się do zabezpieczenia bazy danych i zapytań przed dostępem dla użytkowników aplikacji www i Android. Wykorzystywanie unikalnych identyfikatorów UID po stronie klienta i przeniesienie logiki biznesowej na stronę serwera wydaje się obecnie najlepszym rozwiązaniem pod kątem bezpieczeństwa.
j_insert_update – zaawansowane programowanie – pozycje dokumentu cz. 3
Platforma StudioSystem i zaawansowane programowanie dają ogromne możliwości tworzenia oprogramowania. Ta platforma zapewnia pełny zestaw narzędzi i technologii, które upraszczają proces tworzenia i wdrażania aplikacji oraz zarządzania nimi. Zaawansowane języki programowania, takie jak C# i Java, umożliwiają programistom tworzenie aplikacji o szerokim zakresie możliwości i funkcji.
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.