În secţiunea Câmpuri se definesc toate detaliile câmpurilor care apar în ferestrele de pe terminalul mobil. Un câmp este un mod de a interacţiona cu utilizatorul sau de a salva date.
Există 4 tipuri de baza ale câmpurilor:
A. intrare normală
Acesta poate citi orice tip de text introdus de către utilizator. Are 4 categorii:
text - orice text:
parolă - orice text ale cărui caractere sunt ascunse:
număr - doar valori numerice
dată - doar de tip dată (se ţine cont de formatul definit pe titularl)
B. intrare de tip listă
Se afişează o listă de opţiuni din care utilizatorul poate alege o singură opţiune
Câmpul are un text (în partea de sus - ‘Selectati o opţiune’), o listă de opţiuni (0 - 2) și numere (colţul dreapta jos - 3/3).
Deoarece la terminalul mobil se utilizează tastatură numerică (ușor de utilizat pentru utilizator) se pot afișa doar 10 opțiuni odată, însă dacă se definesc mai multe opțiuni, pe
terminalul mobil, se vor împărții pe mai multe pagini. Pentru deplasarea între aceste pagini se utilizează săgețile dreapta respectiv stânga.
Spre exemplu, dacă în imagine am avea 27 opțiuni și maximum opțiuni pe pagină va fi 8 atunci în colțul din dreapta jos, pe prima pagină, vom vedea numerele 1-8 / 27, pe a doua pagină vom vedea numerele 9-17 / 27, etc.
Dacă o listă trebuie să aducă date sub formă de listă din baza de date atunci se va bifa opţiunea când se defineşte câmpul respectiv, după care se completează codul java care să returneze date la
C. etichetă
De fapt aceasta nu este văzută ca o intrare. O etichetă afișează utilizatorului un text pe care acesta nu se poate pozitiona.
D. bază de date (database)
Aceasta nu se afișează pe ecran. Câmpurile bazei de date sunt utilizate pentru stocarea de valori. Definirea câmpurilor în acest mod se foloseste pentru condiția de ieșire.
Orice combinație de câmpuri se poate folosi la o fereastră, în orice ordine. Deplasarea de la zona de introducere a unui câmp la zona de introducere a altui câmp se poate realiza cu săgețile dreapta respectiv stânga.
Câmpurile pot fi setate ca fiind obligatorii sau pot avea anumite formate. În cazul în care se introduce o valoare neacceptată se va afisa un mesaj de eroare:
Mesaj eroare pentru un câmp gol
După cum se poate observa există un cod, între paranteze, în mesajul de eroare. Acest cod se utilizează pentru partajarea ecranului
Câmpurile se pot definii astfel:
Proprietățiile câmpurilor sunt prezentate mai jos:
denumire reprezintă numele unic al câmpului în interiorul unei ferestre
linie ecran reprezintă poziția pe ecran (în raport cu conținutul fereastei nu a întregului ecran)
coloană ecran reprezintă poziția pe ecran (în raport cu conținutul fereastei nu a întregului ecran)
etichetă* reprezintă un text în mai multe limbi, care se afișează înainte de un câmp de intrare. Câmpul care va putea fi editat va fi afișat imediat după etichetă. Pentru intrări periodice, nu este recomandat să folosiți atributul etichetă. Dacă se utilizeaza, avantajul acestei este că se poate controla mai bine poziția câmpului.
separatorul reprezintă delimitarea care se utilizează înte etichetă și intrarea editabilă. (exemplu :, |, etc.)
tip câmp reprezintă formatul câmpului și poate fi: Numberic, Data, Parola, Text, Listă, Etichetă, baza de date. Pentru câmpurile de tip dată formatul de dată trebuie să fie specificat la nivel de aplicație.
format* determină modul în care utilizatorul trebuie să introducă datele (de exemplu, un anumit format de dată)
lungime maximă se referă la lungimea maximă a datelor introduse de utilizator
Display Length reprezintă lungimea câmpului de intrare (editabil) pe ecran (similar cu lățimea de un obiect grafic). Un câmp de intrare poate avea, de exemplu, o lungime de 15, dar utilizatorului îi este permis să introducă 5 caractere sau 25 de caractere, etc.
număr maxim de linii reprezintă numărul de linii pe care se va afișa câmpul. În cazul în care câmpul este prea lung pentru a fi afișat pe o singură linie, se specifică numărul maxim de linii pentru a afișarea acestuia. Pentru intrări normale trebui să fie implicit 1. Pentru o listă de câmpuri reprezintă numărul maxim de opțiuni care să fi afișate pe ecran o dată (dacă lista are mai multe opțiuni se utilizează paginarea).
lungime Etichetă reprezintă lungimea (lățimea) etichetei pe ecran.
număr maxim de linii al etichetei numărul de linii pe care se va afișa eticheta. În cazul în care eticheta este prea lungă pentru a fi afișată pe o singură linie, se specifică numărul maxim de linii pentru a afișa eticheta. Implicit este 1.
aliniere etichetă poate avea valorile: Stânga=1, Dreapta=2
Wrap Text determină dacă textul va trece peste linii sau nu. Dacă este bifat atunci câmpul poate trece peste linii
obligatoriu* determină dacă un câmp este obligatoriu de introdus sau nu. Dacă este bifat atunci câmpul nu poate fii gol.
valoare implicită* determina o valoarea implicită a unei intrări. Dacă este setat, atunci la afișarea câmpului valoarea setată se va regăsi în câmp; valoare este afișată pe ecran și poate fi editată de către utilizator ca orice altă valoare de intrare.
listă opțiuni afșează o denumirile unor liste de opțiuni configurate în prealabil. Dacă o listă trebuie să aducă date sub formă de listă din baza de date atunci se va bifa opţiunea
când se defineşte câmpul respectiv, după care se completează codul java care să returneze date la
- lista dinamică poate conține și un SQL. Acest trebuie să respecte regula:
@SQL(<nume tabel>) <Instrucțiune SQL>, unde <nume tabel> trebuie să se regăsească în SQL, întrucât se va face securizare pe acel tabel
nr maxim de opțiuni reprezintă numărul maxim de opțiuni care se afișează pe ecran într-o pagină. Implicit este 10, dacă nu este specificat.
Stil etichetă*
Value Style* reprezintă o listă CSV de valorile pentru stilul câmpurilor.
callout determină efectuarea sau nu a unui apel API. Dacă este bifat atunci fereastra va efectua un apel API când câmpul este validat.
afişat determină dacă câmpul se va afişa pe terminalul mobil adică dacă se bifează şi nu este completată logica de afişare atunci câmpul se va afişa pe terminalul mobil şi se pot introduce orice valori care respectă logica câmpului; dacă este completată logica de afişare atunci câmpul se va afişa pe terminalul mobil respectând condiţiile completate la logica de afişare; dacă nu se bifează atunci câmpul nu se afişează pe terminalul mobil.
logică afişare se completează cu condiţiile care determină afişarea datelor în câmpul respectiv sub forma adică @câmp@operator valoare
Parametru: indică faptul că valoarea se transmite dintr-o altă fereastră într-un câmp care se numește WorkflowContext.<nume fereastră>_<nume câmp>. Tot la parametru se poate specifica dacă este volatil (se șterge după ărima citire) respectiv dacă trebuie să actualizeze valoarea câmpului 'sursă' atunci când se schimbă valoarea câmpului curent.
Unele din aceste proprietăți pot fi schimbate în timpul apelului API din timpul rulării.