Синтаксис ${fieldname} используется для обращения к текущему значению другого поля в форме. Он может представлять введённое, выбранное или вычисленное значение — и будет отображаться именно так, как оно появляется в отправленных данных.

Пример: Если у вас есть поле с именем “age” и вы хотите получить точное значение, введённое в это поле, используйте ${age}.

В ограничениях символ “.” используется для обращения к предложенному пользователем вводу или выбору для текущего поля. Он позволяет применять условия или ограничения на основе значения, которое пользователь вводит или выбирает в данный момент.

Пример: Если вы хотите проверить, что предложенное значение для текущего поля меньше 3, используйте ограничение . < 3.


.. — Ссылка на родительскую группу

Внутри группы или группы повторений .. ссылается на родительский контекст. На практике это редко нужно, но используется в продвинутых выражениях XPath для навигации по иерархии формы.


Где используются ссылки

СтолбецТип ссылкиПример
relevant${fieldname}${consent} = 'yes'
constraint. для текущего поля, ${fieldname} для других. > 0 and . <= ${max_value}
calculation${fieldname}${adults} + ${children}
required${fieldname}${has_income} = 'yes'
default${fieldname}${previous_answer}
label${fieldname} в тексте"Ваш возраст: ${age} лет"
choice_filterИмя столбца (без ${})district = ${district}

Ссылки на значения внутри групп повторений

Внутри повторения ${fieldname} ссылается на поле в том же экземпляре повторения:

  relevant: ${member_age} < 18
  

Здесь используется значение member_age для текущего экземпляра повторения, а не для всех экземпляров.

Для обращения к полю в конкретном экземпляре повторения извне повторения используйте indexed-repeat():

  indexed-repeat(${member_name}, ${household_members}, 1)
  

Подробности см. в Функции — Функции для повторяющихся полей.


Проверка пустых значений

Проверьте, был ли дан ответ на поле:

  ${fieldname} != ''       (поле не пустое)
${fieldname} = ''        (поле пустое)
  

Для чисел также проверяйте:

  ${age} > 0               (возраст имеет положительное значение — неявно не пустое в числовом контексте)
  

Приведение типов в ссылках

Когда ${fieldname} используется в числовом контексте (например, ${age} + 1), rtSurvey автоматически преобразует строковое значение в число. Пустое поле преобразуется в 0 или NaN в зависимости от операции — используйте coalesce(${field}, 0) для безопасной установки значения по умолчанию 0 для пустого числового поля.

Была ли эта страница полезной?