Какие есть типы полей и какие значения они хранят?
Введение: Что такое поля и как работать с полями?
Ниже представлена подробная документация для каждого поля БО - type
- type - это перечисление, представляющее типы полей которые вы добавляете в БО (Бизнес Объект) в системе MyBPM. Она используется в API для распознавания поля по его типу при отправке запросов с фильтрами (Read All).
Под заголовком описываются сами поля и какие значения они хранят:
Текстовое поле - INPUT_TEXT
Текстовое поле (одно строковое).
Хранимое значение: String
Мультиязычное текстовое поле - INPUT_TEXT_LANG
Мультиязычное текстовое поле (одно строковое). В системе MyBPM при выборе языка будет показываться текст на выбранном языке.
Хранимое значение: Пример:
"{\"ENG\":\"Write in English\",\"KAZ\":\"Қазақша жаз\",\"QAZ\":\"Qazaqşa jaz\",\"RUS\":\"Пишите на русском\"}"
Текстовый блок - TEXTAREA
Многострочное поле ввода текста где вы можете использовать HTML теги и аттрибуты.
Хранимое значение: String
Пример:
"<p>Text where you can <s> include </s> <br> <u>HTML tags </u> <img src=\"https://platonus.iitu.edu.kz/img/logos/logo.svg\"></b>"
Мультиязычный текстовый блок - TEXTAREA_LANG
Мультиязычное многострочное поле ввода текста где вы можете использовать HTML теги и аттрибуты. В системе MyBPM при выборе языка будет показываться текст на выбранном языке.
Хранимое значение: Пример:
"{\"ENG\":\"<s>Write in English<s>\",\"KAZ\":<s>Қазақша жаз<s>\",\"QAZ\":\"<s>Qazaqşa jaz<s>\",\"RUS\":\"<s>Пишите на русском<s>\"}"
Телефон - INPUT_PHONE
Поле ввода телефона. Рекомендуется вводить чисто цифрами, потому что другие символы помимо цифр будут игнорироваться. Также учтите что по первым цифрам определиться формат номера телефона страны, по которому определиться длина дальше которого цифры больше не будут читаться.
Хранимое значение: String
Пример: 87776662323
Email - INPUT_EMAIL
Поле ввода адреса электронной почты. Рекомендуется соблюдать правильный формат email, потому что если вы отправите рандомный текст система сохранит её без проверок.
Хранимое значение: String
Ссылка - INPUT_LINK
Ссылка - поле отображаемое ссылку, с возможностью перехода по ней.
Хранимое значение: String
Число - INPUT_NUMBER
Поле ввода для целых и дробных чисел. Можно вводить как строку и как число.
Хранимое значение: Number
Чекбокс - CHECKBOX
Поле ввода флага через галочку. Можно вводить как строку и как boolean.
Хранимое значение: true
или false
Дата - DATE
Поле ввода даты - только год, месяц и день.
Хранимое значение: yyyy-MM-dd'T'HH:mm:ss.SSSX
Пример: "2019-11-01T08:50:46.620Z"
Дата и время - FULL_DATE
Выбор даты и времени.
Хранимое значение: yyyy-MM-dd'T'HH:mm:ss.SSSX
Пример: "2019-11-01T08:50:46.620Z"
Время - TIME
Выбор только времени.
Хранимое значение: yyyy-MM-dd'T'HH:mm:ss.SSSX
Пример: "2019-11-01T08:50:46.620Z"
Год - YEAR
Выбор года.
Хранимое значение: yyyy-MM-dd'T'HH:mm:ss.SSSX
Пример: "2019-11-01T08:50:46.620Z"
Год и месяц - YEAR_AND_MONTH
Выбор года и месяца.
Хранимое значение: yyyy-MM-dd'T'HH:mm:ss.SSSX
Пример: "2019-11-01T08:50:46.620Z"
Период - PERIOD
Период дат "с-по" - используется только год, месяц и день.
Хранимое значение: Пример: {"startDate": "2019-11-01T08:50:46.620Z", "endDate": "2019-11-01T08:50:46.620Z"}
Период с временью - PERIOD_TIME
Период дат "с-по" - используется год, месяц, день и время.
Хранимое значение: Пример: {"startDate": "2019-11-01T08:50:46.620Z", "endDate": "2019-11-01T08:50:46.620Z"}
Карта - GEO_POINT
Выбор координат на карте
Хранимое значение: Пример: {"lat": 41.12, "lon": -71.34}
Выпадающий список - DROPDOWN_SINGLE
Выпадающий список с единичным выбором.
Хранимое значение: идентификатор option-а:
При выборе отображения значения через справочник указываем Код значения в справочнике:
Чек лист - CHECKLIST
Выбор нескольких опций через галочки. Варианты можно менять динамически.
Хранимое значение: Массив опций - [{"label":"имя1", "checked": true},{"label":"имя2", "checked": false}]
Пример:
"[{\"label\":\"option1\",\"checked\":true},{\"label\":\"option2\",\"checked\":true},{\"label\":\"option3\",\"checked\":false}]"
Единичный выбор - RADIO_BUTTON_GROUP
Выбор одной опции через радио-кнопку.
Хранимое значение: идентификатор option-а
Опросник - QUESTIONNAIRE
Таблица-анкета, где row это вопрос и column это ответы (Выбирается только один)
Хранимое значение: [{'columnId':'i0lU2a66f~jHcXMo','rowId':'HMiAuJhgnGA4v6ej'}, ...]
Чтобы получить columnId, и rowId через клиент приложения выполняем следующие шаги:
- Открываем
inspect
и заходим вnetwork
- Заходим в нужное БО в режиме редактирования
- Находим в загруженных файлах в
network
:load-business-object-by-id
- Внутри него удостоверьтесь что БО код или id совпадает с вашим
- После этого найдите в данном JSON-е: поле Опросник
- Внутри его скобок будет поле
questionnaires
, где и содержаться нужные id, которые вы будете ставить в columnId и rowId - Что columnId, что rowId будет понятно по названию которые вы давали (column - столбец, row - строка в таблице)
Вложенный Объект - BO
Выбор других бизнес-объектов. Подробнее об вложенных объектах здесь.
Хранимое значение: Массив идентификаторов инстанций бизнес-объекта - ["Идентификатор инстанции БО"]
Пример: "boiId1, boidId2, boiId3"
Составной Объект - CO
Выбор других составных бизнес-объектов. Подробнее об составных объектах здесь.
Хранимое значение: Массив идентификаторов бизнес-объекта и инстанций - ["Идентификатор БО" + "-" + "Идентификатор инстацнии БО"]
Пример: "boId1-boiId1, boId2-boiId2, ..."
- Для получения boiId кликните ссылку выше
- Как получить boId? (Идентификатор Бизнес-Объекта)
Прогресс-бар - PROGRESS_BAR
Вы не можете его указывать через create или update, это делается через скрипты.
Хранимое значение: {'код этапа':'цвет этапа', ...}