Для добавления новых полей, а также редактировании старых, существует инструмент Настройка данных структур, кнопка: "Configure data structure".
Здесь можно добавить поля, сохранить изменения, установить группы, настроить видимые поля и указать дополнительные параметры, о которых расскажем дальше.
Предусмотрена возможность быстрой настройки новой структуры. Это особенно удобно, когда вы уже привыкли к работе в платформе и точно знаете, какая структура вам нужна.
Достаточно выбрать родительскую папку и написать инструкцию для платформы, что именно вы хотите создать. В окне представлен понятный пример, по образу и подобию которого решается ваша задача.
Для быстрого поиска по данным с помощью метода API fromIndex и построения отчетов по связанным полям требуется дополнительная настройка структуры — индексирование полей.
Подобное хранение является очень дорогим в плане ресурсов.
Чтобы включить индексацию (indexEnabled), в расширенных настройках поля переключаем флаг. Индексация каждого поля указывается отдельно.
Подраздел "Ссылочные поля" используется в случае поиска по полям связанного объекта (link / arrayLink).
У вас есть 2 структуры: firstStruct и secondStruct. В структуре firstStruct поле linkToSecondStruct типа link и ссылается на вторую структуру.
Чтобы сделать поле linkToSecondStruct ссылочным на поле stringField из второй структуры, необходимо только его записать в настройках.
Если полей несколько, они перечисляются через запятую (без пробелов). Если требуется поиск по полю объекта, связанного с объектом, то обращение происходит через точку (см. скриншот ниже).
Для активации сортировки по полю оно обязательно должно быть в индексе!
Тэгирование полей структуры, к которой обращается сервис не является полностью преднастроенным механизмом, определяющим взаимодействие веб-сервиса с данными на платформе. Однако, данный подход является типовым решением для веб-сервисов, работающих с платформой.
Тэги – это набор идентификаторов, которые содержат информацию о том, что необходимо сделать веб-сервису со значениями полей загружаемых объектов: сделать их видимыми, в какой последовательности их разместить в таблице, кому дать доступ для их просмотра, в каком из связанных полей предоставить выбор из выпадающего списка.
Тэги настраиваются в редактировании полей структуры (Objects → [искомая структура] → Configure data structure). назначение тэгов осуществляется за счет их перечисления через запятую в соответствующем поле.
Тэг | Использование | Описание |
visible | visible | делает видимым значения поля, на котором указан тэг |
sort | sort=X, где X – это индикатор положения столбца в таблице | определяет абсолютное положение поля объекта (столбца, содержащего значения поля структуры, в котором проставляется тэг) относительно других полей |
list | list$field, где field – это возвращаемое поле связанного объекта | при работе с формами позволяет предложить доступные значения для заполняемого поля, содержащиеся в связанной структуре |
При настройке параметров конкретного поля есть возможность указать его вес. Он может потребоваться для сортировки выдачи при обращении к методу API: Metainfo.
Так, например, если в структуре Books у поля name указать вес 1, а у link вес 10, то при запросе MetaInfo в ответе сначала получим информацию о поле link, потом о name и после обо всех остальных. Иначе список начинался бы с id.
JSON"fields": [{"sysName": "link","name": "link","dataType": "string","id": "12901547459333885","link": "","group": "","tags": "","indexing": false,"ordering": false,"description": null,"weight": 10,"linkIndexFieldSysName": [""],"linkOrArrayLinkType": false,"arrayLink": false,"typeVariable": {},"linkType": false},{"sysName": "name","name": "name","dataType": "string","id": "52561547459332662","link": "","group": "","tags": "","indexing": false,"ordering": false,"description": null,"weight": 1,"linkIndexFieldSysName": [""],"linkOrArrayLinkType": false,"arrayLink": false,"typeVariable": {},"linkType": false},...
В платформе существует несколько системных папок со структурами. Они могут потребоваться для импорта данных, просмотра сообщений из Telegram, инициализации глобальных переменных и т.д.
Для восстановления первоначального состояния системных структур, необходимо воспользоваться кнопкой Создать системные папки в правой панели (раздел Объекты).