AppAPI дозволяє користувачам завантажувати системні метадані з додатку за допомогою різних методів у FormEngine та DMView. Він надає доступ до різних ключів даних для отримання конкретної інформації з додатку.

У xlsform ви можете використовувати функцію pulldata() з таким синтаксисом:

  • 'app-api': Це ключове слово повідомляє FormEngine про необхідність завантаження даних з App API.
  • 'data-key': Це ключ даних, які ви хочете завантажити з App API.
  • Якщо ключ даних недійсний або не підтримується, обчислення поверне “n/a”.

Ось підтримувані ключі даних, які можна використовувати з App-API:

osPlatform: Повертає поточну назву ОС (Android або iOS) та версію ОС. Веб-платформи повертатимуть порожнє значення.

appPlatform: Повертає назву платформи додатку, яка є rtSurvey.

appVersion: Повертає назву версії додатку.

getDisplayWidth: Повертає ширину екрана пристрою в пікселях.

getDisplayHeight: Повертає висоту екрана пристрою в пікселях.

getScreenSize: Повертає розмір екрана пристрою в дюймах.

projectCode: Повертає поточний код проекту сайту, до якого входить користувач.

projectURL: Повертає поточний URL проекту сайту, до якого входить користувач. Значення за замовчуванням/резервне — порожній текст ("").

startingPoint: Повертає шлях до точки, з якої починається форма.

serverTime: Повертає найкраще доступне наближення дати та часу на сервері.

user.[attribute]: Повертає атрибути поточного користувача на основі вказаного ключа атрибута.

Комбінуйте наведені нижче ключі атрибутів з “user.” у параметрах pulldata() для отримання інформації про поточного користувача:

Ключ атрибутаОпис
usernameІм’я користувача
nameПовне ім’я користувача
staffCodeКод персоналу користувача
phoneНомер телефону користувача
emailАдреса електронної пошти користувача
descriptionТекст опису в інформації користувача
organization_idID організації, до якої належить користувач
organization_nameНазва організації, до якої належить користувач
team_idID команди, до якої належить користувач
supervisor_idID супервайзера користувача
is_supervisor1 якщо користувач є супервайзером, 0 якщо ні

instancePath: Повертає поточний шлях папки екземпляру.

appLanguage: Повертає поточну мову додатку, встановлену в налаштуваннях (наприклад, vi, en).

openArgs.[attribute]: Повертає аргумент відкриття форми, переданий з ActionButton. Значення за замовчуванням/резервне — порожній текст ("").

primaryAppColor: Отримує основний колір додатку.


Приклади використання

Зберегти ім’я анкетера та організацію

typenamelabelcalculation
calculateenumerator_namepulldata('app-api', 'user.name')
calculateenumerator_orgpulldata('app-api', 'user.organization_name')
calculateenumerator_emailpulldata('app-api', 'user.email')

Час сервера замість часу пристрою

typenamelabelcalculation
calculateserver_tspulldata('app-api', 'serverTime')

Умовна логіка на основі ролі користувача

typenamelabelrelevant
calculateis_supervisorpulldata('app-api', 'user.is_supervisor')
begin_groupsupervisor_sectionSupervisor review${is_supervisor} = '1'
textsupervisor_notesSupervisor notes
end_group

Примітки

  • Всі виклики pulldata('app-api', ...) оцінюються при відкритті форми і не переоцінюються динамічно під час сесії (крім serverTime та now()).
  • Якщо ключ не підтримується або дані недоступні, функція повертає 'n/a' (не порожній рядок — перевіряйте != 'n/a').
  • Значення openArgs доступні лише при запуску форми з кнопки дій; в іншому випадку повертають порожній рядок.
Чи була ця сторінка корисною?