Document Type

Document Type pozwala na rozbudowanie formularza i dostarczenie bardziej zaawansowanych funkcji i możliwości interakcji.

Komponent DOCUMENT TYPE służy do tworzenia formularzy o bardziej rozbudowanych opcjach niż dodawanie, wyświetlanie i uaktualnianie danych. W komponencie Document Type istnieje możliwość zagnieżdżania innych elementów, m.in. takich jak przyciski (buttony) wywołujące określone akcje, czy funkcjonalne zestawienia (gridy).

Dodanie przycisków i zestawień do komponentu Document Type pozwala na rozbudowanie formularza i dostarczenie bardziej zaawansowanych funkcji i możliwości interakcji dla użytkowników. To daje większą elastyczność w projektowaniu i tworzeniu formularzy, które odpowiadają specyficznym potrzebom i wymaganiom biznesowym.

Stworzenie nowego dokumentu wymaga, aby programista musi utworzył w kodzie aplikacji szablon, który następnie wybiera się w polu TEMPLATE. Programista określa funkcjonalności przyszłego formularza, oraz pola w nim zawarte.

Przykład wykorzystania komponentu Document Type – formularz dopisania reklamacji

Formularz dopisania i edycji Photo Grid

Formularz służy do tworzenia nowych definicji oraz edycji już istniejących rekordów. Składa się on z następujących zakładek:

  • BASIC
  • VIEW
  • SCRIPT
  • FIELDS
  • DICTIONARIES
  • PARAMETERS
  • FOOTER BUTTON
  • ATTACHMENTS
  • HEADER ITEMS

BASIC

Zakładka pozwala określić podstawowe cechy komponentu, wskazać Template w oparciu, o który budowany jest dokument. Można także łatwo aktywować gotowe elementy charakterystyczne dla tego typu komponentu.

Składa się z następujących pól konfiguracyjnych:

  • CODE – nazwa dokumentu
  • NAME – nazwa konfiguracyjna elementu, po której będzie można wyszukiwać go w innych komponentach
  • DESCRIPRION – krótka charakterystyka, opis dokumentu i jego wykorzystania
  • USE NOTES – określa czy na formularzu ma się wyświetlać tzw. menu hamburger z możliwością dodawania notatek
  • USE FILES – czy na formularzu ma się wyświetlać tzw. menu hamburger z możliwością dodawania flików
  • USE PHOTOS – czy na formularzu ma się wyświetlać tzw. menu hamburger z możliwością dodawania zdjęć
  • USE ATTACHMENTS – czy na formularzu ma się wyświetlać tzw. menu hamburger z możliwością dodawania załączników
  • USE DISSCUSSION – czy na formularzu ma się wyświetlać tzw. menu hamburger z możliwością prowadzenia prostych dyskusji dotyczących wątku
  • TEMPLATE – szablon stworzony przez programistę w kodzie aplikacji
  • RESET TEMPLATE – resetowanie szablonu
  • PRX – kod, który ma za zadanie grupowanie elementów w logicznie lub biznesowo powiązane zbiory
  • ACTIVE – oznaczenie czy dokument ma być aktywny, tzn. czy będzie widoczny w innych komponentach,
  • SYSTEM – czy dokument ma być systemowy, tzn. czy jest elementem konfiguracji systemu
  • LOCK ON USE – zabezpieczenie, która nie pozwala na edycję dokumentu przez dwóch (lub więcej) użytkowników w tym samym czasie
  • SHOW CHANGE REASON MODAL – po zapisie dokumentu wyświetla okno wymagające podania powodu wprowadzenia zmian w dokumencie
Formularz konfiguracji Document Type – zakładka Basic

VIEW

Zakładka odnosi się do ustawień dotyczących wyświetlania formularzy dla różnych trybów. Ustawienia uwzględniają tłumaczenia elementów dokumentu, w zależności od wyboru języku interfejsu użytkownika.

Zakładka składa się z następujących pół konfiguracyjnych:

Pola związane z tytułami:

  • PL-PL FROM TITLE (ALL MODES) – tytuł okna dla wszystkich typów formularzy, gdy wybranym językiem aplikacji jest polski
  • EN-EN FROM TITLE (ALL MODES) – tytuł okna dla wszystkich typów formularzy, gdy wybranym językiem aplikacji jest angielski
  • PL-PL FROM TITLE (MODE: CREATE) –tytuł okna dla formularza tworzenia dokumentu, gdy wybranym językiem aplikacji jest polski
  • EN-EN FROM TITLE (MODE: CREATE) – tytuł okna dla formularza tworzenia dokumentu, gdy wybranym językiem aplikacji jest angielski
  • PL-PL FROM TITLE (MODE: UPDATE) – tytułokna dla formularza edycji dokumentu, gdy wybranym językiem aplikacji jest polski
  • EN-EN FROM TITLE (MODE: UPDATE) – tytuł okna dla formularza edycji dokumentu, gdy wybranym językiem aplikacji jest angielski
  • PL-PL FROM TITLE (MODE: VIEW) – tytuł okna dla formularza podglądu dokumentu, gdy wybranym językiem aplikacji jest polski
  • EN-EN FROM TITLE (MODE: VIEW) – tytuł okna dla formularza podglądu dokumentu, gdy wybranym językiem aplikacji jest angielski

Pola związane z buttonami:

  • PL-PL CUSTOM SAVE BUTTON TEXT – tekst wyświetlony na przycisku zapisu formularza, gdy wybranym językiem aplikacji jest polski
  • EN-EN CUSTOM SAVE BUTTON TEXT – tekst wyświetlony na przycisku zapisu formularza, gdy wybranym językiem aplikacji jest angielski
  • PL-PL CUSTOM CANCEL BUTTON TEXT – tekst, wyświetlony na przycisku usunięcia danych z formularza i zamknięcia go, gdy wybranym językiem aplikacji jest polski
  • EN-EN CUSTOM CANCEL BUTTON TEXT – tekst, wyświetlony na przycisku usunięcia danych z formularza i zamknięcia go, gdy wybranym językiem aplikacji jest angielski
  • PL-PL CUSTOM CLOSE BUTTON TEXT – tekst, wyświetlony na przycisku zamykania formularza, gdy wybranym językiem aplikacji jest polski
  • EN-EN CUSTOM CLOSE BUTTON TEXT – tekst wyświetlony na przycisku zamykania formularza, gdy wybranym językiem aplikacji jest angielski
Formularz konfiguracji Document Type – zakładka View

SCRIPTS

Dzięki zapisom skryptowym z zakładki „Scripts” można dostosować zachowanie dokumentu do potrzeb aplikacji. Skrypt wpływa głównie na możliwość wykonywania walidacji, czy wywołania określonych akcji.

Zakładka składa się z następujących pół konfiguracyjnych:

SYNC ALL SCRIPTS WITH TEMPLATE synchronizacja skryptów z szablonem

USE SCRIPT (INITIAL SCRIPT) – użycie podanego skryptu JavaScript przed stworzeniem formularza. Można za jego pomocą np. wyłączyć część pól które mają nie być widoczne od razu po otwarciu formularza

  • USE SCRIPT (BEFORE GETDATA C# SCRIPT) – użycie podanego skryptu C# przed pobraniem danych
  • USE SCRIPT (AFTER GETDATA C# SCRIPT) – użycie podanego skryptu C# po pobraniu danych
  • USE SCRIPT (BEFORE SAVEDATA C# SCRIPT) – użycie podanego skryptu C# przed zapisem danych
  • USE SCRIPT (AFTER SAVEDATA C# SCRIPT) – użycie podanego skryptu C# po zapisie danych
Formularz konfiguracji Document Type – zakładka Scripts

FIELDS

Zakładka służy do konfiguracji ustawień poszczególnych kontrolek w formularz i składa się z następujących pól konfiguracyjnych:

TABS

W sekcji TABS dodaje się zakładki do formularza, kliknięcie ikony PLUSA powoduje wyświetlenie modala z polami PL-PL TITLE oraz EN-EN TITLE

  • PL-PL TITLE – tytuł zakładki, gdy wybranym językiem aplikacji jest polski; jest widoczny w formularzu gdy istniej więcej niż jedna zakładka
  • EN-EN TITLE – tytuł , gdy wybranym językiem aplikacji jest angielski; jest widoczny w formularzu gdy istnieje więcej iż jedna zakładka

FIELDS – aktualizacja pól na postawie Template

  • SYNC FIELDS WITH TEMPLATE – synchronizacja pól formularza z polami zawartymi w szablonie stworzonym przez programistę; programista w kodzie definiuje pewne pola, a kliknięcie tego przycisku powoduje automatyczne wygenerowanie, uaktualnienie lub usunięcie ich w konfiguracji
  • ADD NEW TEMPLATE FIELDS TO CONFIGURATION – dodanie pól do konfiguracji formularza zgodnie z szablonem
  • UPDATE CONFIGURATION FIRLDS WITH TEMPLATE FIELDS – uaktualnienie pól w konfiguracji formularza zgodnie z szablonem
  • DELETE CONFIGURATION FIELDS DELETED FROM TEMPLATE – usunięcie pól z konfiguracji formularza, usuniętych wcześniej z szablonu

FIELDS – Sekcja BASIC

  • NAME – nazwa pola; jeżeli zostało zdefiniowane w szablonie, to wtedy wartość tego pola będzie taka sama jak nazwa pola zdefiniowanego w kodzie i nie będzie możliwości zmiany tej nazwy w konfiguracji; jeżeli pole zostało dodane w konfiguracji i nie ma go w kodzie, to należy zmienić jego nazwę
  • GROUP – nazwa grupy; grupować można elementy, które są w logiczny sposób ze sobą powiązane, dzięki czemu można np. wyłączyć widoczność całej grupy jednym poleceniem
  • DEFAULT VALUE – wartość domyślna
  • TYPE – typ pola, a dokładniej typ danych jakie pole ma przyjmować

Pola opcjonalne zależne od wyboru TYPE

  • MASK – szablon, jak definiuje jakie dane będą mogły być wpisane w formularzu;
  • MAX LENGTH – maksymalna długość podana w ilości znaków;
  • SHOW DEFAULT COLORS – pokazuje domyślną paletę kolorów;
  • SELECT – treść zapytania SQL, pobrane wartości, zostaną umieszczone w rozwijanej liście w formularzu;
  • VALUE COLUMN – kolumna z wartością z zapytaniu SQL w polu SELECT; zaleca się pozostawienie domyślnie wartości value o ile w treści zapytania nazwa jest taka sama;
  • TEXT COLUMN – kolumna z tekstem z zapytania SQL w polu SELECT; zaleca się pozostawienie domyślnie wartości text o ile w treści zapytania nazwa jest taka sama
  • HTML COLUMN – kolumna z kodem HTML; jeżeli w tym polu znajduje się wartość to w zapytaniu SQL z pola SELECT należy pobrać tę wartość z dokładnie taką samą nazwą
  • SEARCH COLUMN – kolumna po której następuje filtrowanie; zaleca się pozostawienie wartości domyślnej ___QUERY
  • SEARCH TYPE – typ filtrowania; jeżeli szukana wartość ma się zaczynać od podanej frazy należy wybrać StartsWith, a jeżeli ma ją zawierać to Contains;
  • COUNTER – licznik;
  • RESTRICT DATES RANGE – ograniczenie wyboru daty w kalendarzu pomiędzy:
    • MIN DATE OFFSET IN DAYS – ilość dni wstecz, wyznacza najwcześniejszą możliwą datę wyboru
    • MAX DATE OFFSET IN DAYS – ilość dni do przodu, wyznacza najpóźniejszą możliwą datę wyboru
    • EIGHT [PX] – wysokość grida dodanego jako komponent;
  • GRID DETAILS – otwiera możliwość konfiguracji grida dodanego jako element w dokumencie
  • DECIMAL SIGNS – ilość znaków po przecinku dodawana automatycznie;
  • SIGNED – czy wartość może być ujemna;
  • RESTRICT NUMBERS VALUES – czy wartość liczbowa ma być ograniczona do zakresu pomiędzy:
    • MIN NUMBER – minimalna wartość jaką można wpisać w pole w formularzu;
    • MAX NUMBER – maksymalna wartość jaką można wpisać w pole w formularzu;
  • API URL – adres API
  • USE AS PRIMARY KEY – czy kolumna reprezentująca dane pole ma być kluczem głównym
  • HIDDEN – czy pole ma być ukryte na stałe

Skrypty C#

  • USE SCRIPT (HIDDEN – C# SCRIPT) – czy pole ma być ukryte zgodnie z wpisanym poniżej skryptem C#
  • DISABLED – czy pole ma być wyłączone na stałe
  • USE SCRIPT (DISABLED – C# SCRIPT) – czy pole ma być wyłączone zgodnie z wpisanym poniżej skryptem C#
  • VALIDATOR – REQUIRED – czy walidator dla pola jest wymagany
  • USE SCRIPT (ADDITIONAL VALIDATORS JS SCRIPT) – czy pole ma używać walidatora zdefiniowanego w poniższym skrypcie JavaScrip

Sekcja VIEW:

  • TAB – do jakiej zakładki przynależy dane pole
  • WIDTH [1-12] – szerokość kontrolki w skali 1-12, gdzie 12 to szerokość całego formularza;
  • BREAK LINE AFTER FIELD – jeżeli pole jest zaznaczone, to kolejne pola zostaną umieszczone w następnej linii;
  • FOREIGN FIELD – czy formularz ma zostać zapisany, mimo niepoprawnego wyniku walidacji;
  • EN-EN TITLE – nazwa pola w formularzu, jest ustawiana, jeśli wybranym językiem jest angielski
  • EN-EN TOOLTIP – treść podpowiedzi wyświetlanej po najechaniu kursorem, jeśli wybranym językiem jest angielski
  • PL-PL TITLE – nazwa pola w formularzu, jest ustawiana, gdy wybranym językiem jest polski
  • PL-PL TOOLTIP –treść podpowiedzi wyświetlanej po najechaniu kursorem, jeśli wybranym językiem jest polski
Formularz konfiguracji Document Type – zakładka Fields

DICTIONARIES

Jeżeli programista zdefiniuje w kodzie dodatkowe słowniki, to pojawią się one w tym miejscu w postaci pól. Można im wtedy nadać odpowiednie wartości.

Szczegóły konfiguracji słowników dostępne w instrukcji Dictionary Configuration.

Formularz konfiguracji Document Type – zakładka Dictionaries

PARAMETERS

Jeżeli programista zdefiniuje w kodzie dodatkowe parametry, to pojawią się one w tym miejscu w postaci pól. Można im wtedy nadać odpowiednie wartości.

Formularz konfiguracji Document Type – zakładka Parameters

Szczegóły konfiguracji słowników dostępne w instrukcji Parameters.


FOOTER BUTTONS

Pozwala dodawać buttony w stopce dokumentu.

W sekcji TABS dodaje się zakładki do formularza, kliknięcie ikony PLUSA powoduje wyświetlenie modala dodawania przycisku, składający się z następujących pół konfiguracyjnych:

  • NAME – nazwa konfiguracyjna elementu, po której będzie można wyszukiwać go w innych komponentach
  • en-EN TITLE – nazwa jaka pojawi się na przycisku, jeśli językiem użytkownika jest angielski;
  • pl-PL TITLE – nazwa jaka pojawi się na przycisku, jeśli językiem użytkownika jest polski;
  • THEME – wybór domyślnego tylu przycisku spośród motywów dostępnych w programie;
  • BUTTON TYPE – typ przycisku wybierany sposód dostępnych w programie,
  • CUSTOM – (check-box) – aktywacja umożliwia personalizację kolorystyki przycisku:
  • PREVIEW BUTTON – podgląd skonfigurowanego przycisku;
  • Apply to other themes – powoduje zastosowanie konfiguracji przycisku do pozostałych przycisków w formularzu;
  • USE BUFFER – (check-box) –
  • ACTIVE – (check-box) – oznaczenie aktywności buttonu, zaznaczenie jest konieczne, aby przycisk był widoczny w formularzu;
  • TARGET – wybór targetu, do którego nastąpi odniesienie po użyciu buttonu;
  • HELP – otwiera podgląd spisu dostępnych w programie targetów;
  • WINDOW MODE – określa rodzaj okna w jakim zostanie wywołany target;

W zależności od wybranego targetu w formularzu pojawią się kolejne pola konfiguracyjne powiązane ze wskazanym targetem.

Szczegóły pól konfiguracyjnych poszczególnych targetów w instrukcji Components.

Formularz konfiguracji Document Type – zakładka Footer Buttons

ATTACHEMENTS

Pozwala na dodawanie załączników z dźwiękami do elementu Document Type.

Dodawanie załączników możliwe jest za pomocą zielonego button „Dodaj załącznik”. Następnie należy wskazać plik do załadowania oraz określić jego nazwę.

Możliwe jest warunkowanie użytego dźwięku w zależności od języka kontekstu użytkownika. Aby dodać różne załączniki należy aktywować checkbox „Tłumaczony”, po czym wprowadzić załącznik oraz jego nazwę dla każdego z języków.

Dodając załączniki ważne jest żeby określić Contend ID (po nim będą później włączane pliki w funkcji playValidationErrorSound).

Jeżeli wybierzemy najpierw dodanie pliku z uploadera to Content ID i File name zostanie uzupełnione nazwą pliku.

Usuwanie możliwe jest za pomocą czerwonego button „Usuń załącznik”.

Formularz konfiguracji Document Type – zakładka Attachements

Modyfikacja SCRIPTS

  • InitialScrips

Komunikat głosowy podpięty pod wskazany button w dokumencie. Komunikat zostanie wywołany przy użyciu wskazanego buttona, jeśli wystąpił błąd podczas walidacji.

const btn = document.querySelector(".some-button"); btn.addEventListener("click", () => {vm.playValidationErrorSound("beep-01a.mp3"); });
  • document.querySelector („. […]”) – należy wskazać nazwę button,
  • vm – Kontekst wywoływanego dokumentu, używany do wywołania funkcji (playValidationErrorSound) aktywującej komunikat dźwiękowy,
  • Nazwy przekazane do funkcji playValidationErrorSound (items.mp3, beep.mp3) oznaczają nazwę pliku załączonego, pole Content ID z zakładki Attachments.
  • Additional On Validation Error JS Script

Komunikat głosowy, jako skutek dodatkowej akcji JSowej po wystąpieniu błędu walidacji.

Pozwala na warunkowanie dźwięku w zależności od kontrolki w jakiej wystąpił błąd. Nie warunkując w zależności od nazwy pola z Fields każdorazowo wystąpi ten sam plik dźwiękowy, używając zmiennej firstInvalidField dostajemy przeliczoną po wystąpieniu błędu nazwę pola, w której jest błąd i możemy w zależności od pola włączać różne komunikaty głosowe (także tłumaczone, zależne od aktualnego języka).

  • vm – Kontekst wywoływanego dokumentu, używany do wywołania funkcji (playValidationErrorSound) aktywującej komunikat dźwiękowy,
  • firstInvalidField – Pierwsze odnalezione pole w którym wystąpił błąd. Tutaj przekazywane do obsługi komunikatów głosowych są nazwy pól z zakładki FIELDS,
  • Nazwy przekazane do funkcji playValidationErrorSound (items.mp3, beep.mp3) oznaczają nazwę pliku załączonego, pole Content ID z zakładki Attachments.
return (vm, firstInvalidField) => {  if (firstInvalidField == "Items") vm.playValidationErrorSound("items.mp3");  else vm.playValidationErrorSound("beep.mp3"); } 

W powyższym przykładzie kiedy wystąpi błąd w polu „Items” z zakładki FIELDS zostanie wywołany komunikat z pliku „items.mp3”, przy wystąpieniu błędu w jakimkolwiek innym polu zostanie wywołany komunikat pliku „beep.mp3”.

HEADER ITEMS

Funkcjonalność zawarta w tej zakładce pozwala skonfigurować dane nagłówkowe, widoczne w górnym pasku formularza.

Przykładowy widok danych nagłówkowych z formularza Document Type

W celu skonfigurowania elementu należy uzupełnić następujące pola:

  • ICON – określa jaka ikona ma znajdować się przy wyświetlanej wartości;
  • VALUE COLUMN – określa jaka wartość ma zostać wyświetlon. Możliwe jest dodanie podglądu domyślnych danych takich jak: numer referencyjny (REFNO), datę powstania dokumentu, a także typ oraz podtyp dokumentu, jak również dowolnego pola z zakładki FIELDS;
  • PREVIEW – zwraca podgląd wybranej ikony oraz kolumny z wyświetlaną wartością;
  • ACTIVE – (check-box) – oznaczenie aktywności elementu Header Items, zaznaczenie jest konieczne, aby wartość była widoczna w nagłówku formularza;
  • Label – pl-PL – etykieta elementu w języku polskim, wyświetlana w postaci tooltip po najechaniu na wartość nagłówkową jeśli językiem kontekstu użytkownika jest j.polski;
  • Label – en-EN – etykieta elementu w języku angielskim, wyświetlana w postaci tooltip po najechaniu na wartość nagłówkową jeśli językiem kontekstu użytkownika jest j.angielski.
Formularz konfiguracji Document Type – zakładka Attachements

* W przypadku elementów przygotowanych przed wprowadzeniem rozwiązania, pojawienie się wartości Header Items może wymagać odświeżenia konfiguracji elementów toolbarmenu. W takim przypadku konieczne jest odszukanie konfiguracji toolbaarmenu, do których podpięty został wskazany DT (np. dodaj, edycja, podgląd) otwarcie formularza edycji elementu i dokonanie zapisu.


Szczegóły konfiguracji podpięcia definicji dostępne w instrukcji Components.