v8: Форма констант Ключевые слова: Форма, редактирования, констант, КонстантаНабор
Если форма констант не создана программистом, то она генерируется системой автоматически. Когда констант много, то появляется прокрутка, и форма может быть не очень удобной. Кроме того, возникает желание сгруппировать константы по смыслу, например, с помощью закладок (панели).
В качестве формы констант обычно используется общая форма, которую можно создать конструктором форм:
а) Щелкните правой кнопкой на ветке "Константы" в дереве конфигурации
б) Выберите "Создать форму констант" или "Создать основную форму констант".
в) Разместите на форме элементы управления (поля ввода, флажки), связанные с константами.
Основная форма констант прописывается в свойствах всей конфигурации.
Форму констант можно получать из программных модулей с помощью конструкции:
Форма = Константы.ПолучитьФорму(<Имя>); //если имя не указано, то основная форма констант
Форма.Открыть();
Форму констант также можно вызывать по собственному пункту в меню, например, Сервис => Настройка параметров учета или Операции => Константы.
У формы констант создается реквизит "КонстантыНабор". Далее начинается самое интересное. По умолчанию в набор констант входят только имеющиеся на данный момент константы (свойство "Состав"). При создании новой константы ее не получится разместить на форме: ее просто нет в списке констант, который появляется по кнопке "Размещение данных"). Можно попытаться разместить элемент управления и связать его с константой, но в режиме Предприятие такой элемент будет недоступным. Это происходит, потому что новая константа не входит в набор констант для этой формы.
Чтобы новую константу разместить на форме, нужно сделать одно из двух:
1. Или включить ее в набор (свойство Состав)
2. Или у формы установить флаг "Использовать все константы", тогда свойство Набор становится недоступным.
Отмечу, что константы типа "Хранилище значения" нельзя разместить на форме, даже если они входят в набор или установлен флаг "Использовать все константы". Их редактирование нужно запрограммировать самостоятельно. |