Получить запись
Используется для получения значений полей конкретной записи из Бипиума по её идентификатору. Процессы имеют доступ к записям минуя правовую политику.
Свойства
Секция «Получить запись»
Указать каталог
Способ выбора каталога для получения записи. Доступные варианты: из списка
и через переменную
. Вариант «из списка» подойдет, когда вы знаете из какого каталога хотите получить запись. Вариант «через переменную» используется, если нужно получить запись из разных каталогов в зависимости от логики в сценарии.
Каталог
Свойство доступно при выбранном значении Указать каталог = Из списка
. Выбор каталога из числа доступных в системе для получения записи. Формат: выбор из списка каталогов.
ID каталога
Свойство доступно при выбранном значении Указать каталог = Через переменную
. Идентификатор (ID) каталога, из которого нужно получить запись. Формат: значение/выражение.
ID записи Идентификатор (ID) записи, которую нужно получить. Формат: значение/выражение.
Секция «Получить»
Поля
Способ указания какие поля записи должны вернуться в результате. Доступные варианты: все поля
и заданные
. Вариант «все поля» вернет все поля каталога, включая расширенные поля связанных записей, которые заданы в настройках полей каталога. Вариант «заданные» позволяет указать какие именно поля вернуть, в том числе и расширенные поля у связанных записей.
ID полей
Свойство доступно при выбранном значении Поля = Заданные
. Массив идентификаторов (API ID) полей каталога, указанных через запятую. Ограничение списка полей уменьшает размер данных в сценарии, и увеличивает скорость их получения. Также компонент позволяет получить любые расширенные поля у связанных записей. Формат: значение/выражение.
Формат указания расширенных полей:
IDполяX
— поле выбранного каталогаIDкаталогаХ
— Идентификатор каталога связанного каталога. Поле «связанные каталог» может иметь несколько источников. Например каталог «Договор» в поле контрагент может ссылаться на каталоги «Клиентов», «Партнеров» и «Подрядчиков». Для каждого каталога источника можно указать какие именно поля требуется получить.IDрасширенногоПоляХ
— идентификаторы полей связанного каталога, которые нужно получить.
Секция «Результат»
Сохранить в Выходной параметр. Сохранит результат в указанную переменную. Формат: имя переменной.
В поле «Сохранить в» можно указать ключ объекта и результат сохранится как значения этого ключа.
Пример
Если указать в поле «Сохранить в» переменнуюdata.temp, то результат будет выглядеть следующим образом:
Формат значения полей (values)
Переменная с результатом («сохранить в») содержит объект values — значения полей записи. Ключи объекта — идентификаторы полей. Формат значений для разных типов полей разный:
Однострочный текст =
"Однострочный текст"
Многострочный текст =
"Многострочный текст"
Дата =
"2015-11-06T21:00:00.000Z"
Категория / набор галочек =
[2]
или несколько значений[2,3,4]
, без значения[]
Вопрос =
2
Число =
3.2
Прогресс =
28
(допустимо от 0 до 100)Звезды =
5
(допустимо от 0 до 5)Контакт = массив объектов
[{"contact": "8-901-234-56-78", comment: "Секретарь"}, {...}]
Адрес = объект предоставляемый из DaData
Связанная запись = массив объектов
[ {catalogId: '11',recordId: '91', catalogTitle: 'Название каталога', recordTitle: 'Название записи', isRemoved: false}, {...} ]
Сотрудник = массив объектов
[{id: '21', title: 'Имя', isRemoved: false}, {...}]
Файл = массив объектов
[ {title: "имя", url: "http://путь", size: 45654, mimeType: "image/png"}, {...} ]
гдеmimeType
— допустимые значения
Как получить значение поля?
Допустим, вы сохранили найденную запись в переменную r
. Чтобы обратиться к коллекции значений полей, используйте выражение r.values
.
Чтобы получить значение, например, 4-го поля записи, используйте компонент назначение переменных и укажите выражение r.values['4']
.
Как получить значение сложного поля?
Для сложных типов полей (значения которых представлены массивом, например: категория, связанный объект, контакт, сотрудник, файл) значение поля будет массивом. Чтобы узнать сколько элементов в массиве используйте выражение r.values['4'].length
, а чтобы получить значение, например, 0-го элемента массива: r.values['4'][0]
, чтобы обратится к его свойству, например recordId у поля типа связанный объект: r.values['4'][0].recordId
.
Однако, если вы обратитесь к параметру (например recordId) к элементу массива, которого нет (например, когда в поле не выбрано никакое значение), то сценарий прервется с ошибкой. Поэтому, прежде чем получить свойство у объекта в массиве, нужно сначала проверить что массив не пустой. Это можно сделать с помощью компонентов ветвления сценария (шлюзов) и проверки условий на исходящих соединительных линиях, или с помощью выражения: r.values['4'].length && r.values['4'][0].recordId
.
Это выражение проверяет что в 4-м поле в массиве есть элементы, и если есть хотя бы один, то возвращает значение свойства recordId в 0-м элементе. Именно это значение будет присвоено переменной. Если элементов нет, то переменной будет присвоено 0.
Пограничные события
Компонент поддерживает 2 типа пограничных событий:
Ошибка — выход из компонента, если произошла какая-либо ошибка
Таймаут — выход из компонента, спустя заданное ограничение по времени
Если компонент завершился с ошибкой, но на нем не было пограничного события, то процесс завершается. Сообщение ошибки возвращается в результатах процесса.
Last updated