10. Интерфейсные механизмы
#75

Готовишься к экзамену?

Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.

Перейти в бота

При разработке формы документа «Ведомость в кассу» (чтобы удобнее контролировать автоматическое заполнение по кнопке «Заполнить») нужно поменять у поля формы способ отображения — например, показать булевый реквизит как «тумблер», а сумму «К выплате» как надпись, чтобы пользователь её не правил вручную. Можно ли изменять свойство «Вид» у элемента формы, который связан с реквизитом формы/документа?

Нельзя менять, если элемент формы привязан к данным (есть путь к данным/связь с реквизитом).
Неправильно: связь элемента формы с данными не запрещает менять «Вид». Ограничение другое - набор допустимых значений «Вида» зависит от типа данных (например, для булевого поля доступны представления вроде флажка/тумблера, а для числового - варианты ввода/отображения), но сама возможность изменения остаётся.
Менять можно только через код (программно), а в настройках формы это недоступно.
Неправильно: «Вид» можно задавать и в настройках формы при проектировании, и менять из кода. Программное изменение часто используют для сценариев вроде «после автоматического заполнения сделать поле только для просмотра», но это не единственный способ.
Да, «Вид» можно менять всегда - как в настройках формы, так и программно; главное, чтобы выбранный вид поддерживался типом данных поля.
Правильно: свойство «Вид» предназначено именно для управления тем, как элемент отображается пользователю, и может меняться разными способами. При этом количество и состав доступных вариантов «Вида» определяется типом реквизита, который выводится в элементе формы.
Нет, «Вид» - фиксированное свойство, его изменить в принципе нельзя.
Неправильно: платформа предусматривает настройку представления элементов (в том числе через свойство «Вид») и при разработке формы, и через программную логику. Это стандартный механизм управления интерфейсом, а не неизменяемый параметр.

Пояснение

Практический контекст для «Ведомости в кассу» и автоматического заполнения: 1) Как обычно работает автозаполнение - Документ «Ведомость в кассу» применяют для выплаты зарплаты наличными через кассу. На форме обычно указывают организацию, кассу, месяц/период выплаты и «вид выплаты» (зарплата, аванс и т.п.), после чего используют команду «Заполнить». - Заполнение подбирает сотрудников и суммы «К выплате» на основании зарегистрированных начислений/взаиморасчётов и выбранных настроек выплаты. В ряде конфигураций рядом с «Заполнить» есть дополнительные варианты заполнения/настроек (например, что именно подбирать и за какой период). 2) Типовые причины, почему «не заполняется» или заполняется не тем - У сотрудников выбран способ выплаты, не совпадающий с «кассой» (например, «банк/карта»), из-за чего при заполнении они не попадают в ведомость наличными. - Неверно указан месяц начисления/период, либо еще не введены документы начисления/выплаты, из которых берутся суммы. - Не выбрана нужная организация/подразделение/касса (в зависимости от конфигурации), поэтому отбор даёт пустой результат. 3) Зачем здесь свойство «Вид» элемента формы После нажатия «Заполнить» часто нужно сделать интерфейс более «защищённым от случайных правок» и удобным для проверки: - Пример 1 (суммы): поле табличной части «К выплате» можно показывать как надпись (только просмотр) при автоматическом заполнении, а в ручном режиме - как поле ввода. - Пример 2 (булевы флаги): реквизит вроде «Выплачено/Проведено/Учитывать» (если он есть в форме) можно отображать как классический флажок или как тумблер - это меняется через «Вид». 4) Ключевое правило Менять «Вид» можно в любой момент (в настройках формы или программно), но выбирать нужно только совместимые варианты. Количество вариантов «Вида» зависит от типа данных, который вы показываете в элементе формы. Итого: при проектировании формы «Ведомости в кассу» вы можете сочетать автоматическое заполнение (команда «Заполнить») с динамической настройкой интерфейса через «Вид» - так пользователю проще проверить результат и сложнее случайно испортить рассчитанные суммы.