Przejdź do głównej treści

Dodatkowe opcje dla pól

Ready_™ Developer TeamMniej niż 1 minuta

Dodatkowe opcje

Dodatkowe opcje, które możesz umieścić w tablicy JSON w polu parametry.

Pole wymagane

Jeśli pole ma być wymagalne, to należy dla niego określić atrybut required.

Przepis
{
  "required": true
}
Efekt
Pole wymagane
:size=autox128

Pole tylko do odczytu

Jeśli pole ma być tylko do odczytu, to należy dla niego określić atrybut enabled:

Przepis
{
  "enabled": false
}
Efekt
Pole wymagane
:size=autox128

Domyślna wartość pola

Statycznie

Zawsze ma stałą wartość.

{
  "defaultValue": true
}
{
  "defaultValue": 123
}
{
  "defaultValue": "Domyślny opis"
}
Dynamicznie
  • Czy dokument posiada pozycje?
{"defaultValue":"{SQL::SELECT EXISTS(SELECT fkelid FROM fk_elements WHERE is_del is not true and doc_id = {doc_id}})"}
  • Id tworzącego dokument
{"defaultValue":"{SQL::SELECT adduid FROM documents WHERE doc_id = {doc_id}}"}
  • Domyślna data
{"defaultValue": "{SQL::SELECT CURRENT_DATE}"}
  • Aktualnie zalogowany użytkownik
{"defaultValue": "{SQL::SELECT {LOGGED_USR_ID}}"}

Możliwe jest też ustawienie wartości wyliczanej za każdym razem, gdy dokonujemy zapisu rejestru (dla pól ukrytych lub tylko do odczytu):

{
  "value":"{SQL::SELECT o.orunid FROM orgtree_view o WHERE o.usr_id = {LOGGED_USR_ID}}"
}

Zasady działania parsowania parametrów value i defaultValue:

  • defaultValue jest parsowane tylko dla formularza nowego wpisu w rejestrze (na akcji Open oraz Save).
  • value jest parsowane zawsze na akcji Save niezależnie od trybu (edycja, nowy) wyłącznie dla pól:
    • ukrytych poprzez definicję pola (register_fields.hidden = TRUE)
    • ukrytych poprzez parametr visible (register_fields.params = {"visible":false})
    • nieaktywnych (register_fields.params = {"enabled":false})