Версия:

Описание профайла самого класса/КО

Описание

Настройки профайла позволяют сформировать поведение системы при взаимодействии с ним. Это настройки, относящиеся как к серверной стороне, так и настройки для клиентских компонентов.

Поля профайла самого класса

  1. name. Должно совпадать с ключом объекта, описывающего этот класс.
  2. name_ru. Не обязательно должно быть на русском. Это титул, который будет отображаться в клиентских таблицах, а также использоваться в системных сообщениях при манипуляциях с этим объектом (например, «Пользователь добавлен»).
  3. primary_key. Системное поле, всегда id.
  4. parent_table и parent_key. Используются клиентскими компонентами (таблицами, расположенными внутри формы или фрейма). Позволяют находить родительскую форму, получать id родительской записи и накладывать фильтр на данные таблицы.
    • parent_key используется либо из этого поля, либо берется из профайлов полей (поле, у которого установлен флаг parent_key).
  5. server_parent_table и server_parent_key. Определяют зависимость таблицы (прямую иерархию) от других таблиц. Можно указать несколько через запятую. Количество ключей должно совпадать с количеством таблиц. Допускается зависимость от самой себя (например, d_location или d_storage).
    • Используется для определения зависимостей при каскадном удалении и очистке кэша.
  6. server_parent_key_for_dynamic_fields. Не используется.
  7. checkbox_where, checkbox_where_default_enabled и checkbox_where_title. Позволяют вывести в заголовке таблицы чекбокс, при активации которого на данные накладывается дополнительное условие (в виде JSON-массива объектов условий IOneWhere).
    • Для текущей даты предусмотрена подстановка NOW_DATE (формат DD.MM.YYYY).
    • Можно задать начальное состояние чекбокса и его лейбл.
  8. param_checkbox (и доп. поля). Не используются.
  9. ending. Используется для склонения системных сообщений (например, для женского рода «а» в слове «изменена»).
  10. default_order_by. Сортировка по умолчанию (например, id desc).
  11. default_where. Условия по умолчанию (JSON-строка с массивом IOneWhere[]). Накладываются при любом запросе.
    • Можно отменить на сервере, передав doNotUseDefaultWhere=true в rParams.
  12. open_form_client_object. Имя клиентского объекта (формы), которая откроется из контекстного меню таблицы. Требует флага new_by_modal_command.
  13. child_client_object. Статус использования не подтвержден.
  14. rows_max_num_list и rows_max_num. Настройка количества выводимых строк в таблице. По умолчанию: 10, 20, 50, 100.
  15. new_command, modify_command, remove_command. Чекбоксы, определяющие возможность создания, изменения и удаления данных. Проверяются на клиенте и на сервере.
  16. editable. Если false, запрещает любые действия с данными со стороны клиента (проверяется на сервере).
  17. additional_functionality. Позволяет подключить одноименный клиентский JS-файл для расширения функционала таблицы.
  18. distinct_columns. Имена полей через запятую для добавления DISTINCT в запрос.
  19. use_cache. Возможность отключения кэширования для класса (используется для системных таблиц).
  20. check_company_access. Устарело/Не реализовано (используется другой механизм).
  21. count_large. Устарело.
  22. like_type. Режим LIKE для поиска (%like, like, like%). По умолчанию — like.
  23. hierarchical_table и do_not_set_deep. Определяют иерархичность таблицы (ссылка на себя). Автоматически добавляются поля node_deep, parents_count, children_count.
    • Доступны методы getTree, getParentIds, getChildIds.
  24. do_not_use_cache_client. Устарело.
  25. child_class. Позволяет указать дочерний класс (и КО через точку) для построения сложной иерархии нескольких сущностей в getTree.
  26. command_get, command_add, command_modify, command_remove. Позволяют переопределить стандартные команды. В текущей версии реализовано только для command_get в формах.