В форме доступ к элементу управления и данным, которые он содержит, ограничивается по следующим правилам:
Не рекомендуется делать элемент управления невидимым. Ограничения на чтение данных регулируются другими механизмами, не в форме.
Для управления доступом к элементу управления, т. е. возможностью активизировать элемент управления в форме, нужно использовать свойство Доступность.
Не рекомендуется сбрасывать (в значение Ложь) свойство Доступность у формы.
Для запрета редактирования данных в полях ввода, выбора, списка и табличных полях (по полю в целом), а также в элементе управления типа ТекстовыйДокумент нужно использовать свойство ТолькоПросмотр.
В этом случае, если у элемента управления не сброшено свойство Доступность, обеспечивается доступ к данным на чтение (для копирования информации в буфер обмена и другие операции по контекстному меню).
Для запрета редактирования всей информации в форме нужно установить в значение Истина свойство формы ТолькоПросмотр.
В табличных полях, если необходимо запретить редактирование для ячеек всех строк в любой из колонок, то необходимо установить свойство ТолькоПросмотр у колонки в значение Истина.
Способы управления доступом для отдельных ячеек в табличном поле регламентируются отдельно.
Использование свойств "Отметка незаполненного" и "Автоотметка незаполненного"
Не заполненные поля ввода, в которые вводятся обязательные для заполнения данные, рекомендуется отмечать особо.
Для обозначения такой отметки у поля ввода есть свойство "ОтметкаНезаполненного". Свойство указывает, нужно ли сейчас в поле ввода отображать особую отметку или нет.
Чтобы избежать написания обработчиков формы для проверки заполнения полей ввода, можно используется свойство поля ввода "АвтоОтметкаНезаполненного".
Оно указывает, нужно ли формировать автоматически состояние свойства "ОтметкаНезаполненного" в зависимости от устанавливаемого или формируемого в поле ввода значения.
Отметка у поля ввода работает по следующим правилам:
1. Отметка безусловно регулируется значением свойства "ОтметкаНезаполненного". При присвоении значения свойству "ОтметкаНезаполненного" на отметку не будет влияет ни значение свойства "АвтоОтметкаНезаполненного", ни значение, введенное в поле ввода.
2. В момент установки свойства "АвтоОтметкаНезаполненного" (Истина) проверяется значение в поле ввода и актуализируется значение свойства "ОтметкаНезаполненного".
2. В момент снятия свойства "АвтоОтметкаНезаполненного" (Ложь) проверка значения в поле ввода не производится. Значение свойства "ОтметкаНезаполненного" не актуализируется.
Общие формы
Общая форма "НастройкаПараметровУчета"
Для всех конфигураций, в которых предусматривается ручное редактирование значений констант, нужно разработать и определить в свойствах конфигурации форму для редактирования констант.
Имя: НастройкаПараметровУчета.
Синоним: Настройка параметров учета.
В свойстве Подсистемы устанавливается принадлежность ко всем подсистемам конфигурации.
Эта форма устанавливается основной формой редактирования констант (указывается в свойствах конфигурации).
Считывание значений констант производится программно при открытии формы (событие ПриОткрытии()).
Запись значений констант производится программно при записи в форме (событие ПриЗаписи()).
На форме расположены командная панель ОсновныеДействияФормы для завершения работы с формой и получения справки.
Если предусматривается несколько разделов настройки, значения констант располагаются на панели с несколькими станицами. Состав страниц панели и их содержание определяется c точки зрения прикладной логики. Отображение закладок осуществляется способом "Сверху (в несколько строк)".
Общая форма "ФормаВводаКурсаИКратности"
Для случаев, когда значения курса и кратности валюты нужно редактируются вместе используется специальная форма:
Имя: ФормаВводаКурсаИКратности.
Синоним: Форма ввода курса и кратности.
В свойстве Подсистемы устанавливается принадлежность ко всем подсистемам конфигурации, где используется редактирование курса и кратности валюты.
Изменять размер: Не изменять.
Форма позволяет определить значение курса и кратности непосредственно на закладке "Вручную" или выбрать их из списка истории изменения курса и кратности на закладке "Из списка".
Передача начальных значений в форму осуществляется через реквизиты:
Реквизит | Значение |
Валюта | валюта, по которой необходимо установить курс и кратность |
ДатаУстановкиКурсаИКратности | дата, на которую установлены переданные значения курса и кратности |
КратностьВалюты | начальное значение кратности валюты |
КурсВалюты | начальное значение курса валюты |
Форма открывается модально, и при закрытии возвращает результат.
Если пользователь отказался от изменения значений курса и кратности валюты, то возвращается Неопределено.
Если пользователь подтвердил значения курса и кратности, возвращается структура следующего содержания:
Ключ | Значение |
КурсВалюты | новое значение курса валюты |
КратностьВалюты | новое значение кратности валюты |
Форма использует обращение к справочнику Валюты и регистру сведений КурсыВалют.
Общая форма "ХодВыполненияОбработкиДанных"
Для отображения хода выполнения обработки данных и других процессов рекомендуется использовать отдельную форму.
Имя: ХодВыполненияОбработкиДанных.
Синоним: Форма индикации хода выполнения обработки данных.
Изменять размер: Не изменять.
Положение окна: Центрировать.
Форма позволяет по мере выполнения обработки данных информировать пользователя о ходе выполнения в процентах от всего объема обработки.
Управление формой осуществляется через реквизиты:
Реквизит | Значение |
НаименованиеОбработкиДанных | Название обработки данных (отображается в заголовке формы) |
КомментарийОбработкиДанных | Поясняет выполняемое в данный момент обработкой действие |
КомментарийЗначения | Поясняет значение, отображаемое индикатором |
МаксимальноеЗначение | Верхняя граница шкалы индикатора |
Значение | Текущее значение шкалы индикатора |
Форма открывается не модально, так как служит только для отображения, а обработка данных производится в другом месте, как правило, в вызывающей её форме .
Реквизиты НаименованиеОбработкиДанных, КомментарийОбработкиДанных и КомментарийЗначения обязательны к заполнению.
Пример использования формы индикатора:
ФормаИндикатора = ПолучитьОбщуюФорму("ХодВыполненияОбработкиДанных"); ФормаИндикатора.НаименованиеОбработкиДанных = "Загрузка классификатора банков"; ФормаИндикатора.КомментарийОбработкиДанных = "Загружаются данные из классификатора"; ФормаИндикатора.КомментарийЗначения = "Загружено:"; ФормаИндикатора.Открыть(); /// ... Обработка данных ... ФормаИндикатора.МаксимальноеЗначение = КолСтрок; Для Сч = 1 по КолСтрок Цикл /// ... Обработка данных ... ФормаИндикатора.Значение = Сч; /// ... Обработка данных ... КонецЦикла; ФормаИндикатора.Закрыть(); |
Общая форма "ФормаРедактированияТекста"
Если редактирование текста непосредственно в форме затруднительно или не предусмотрено вовсе,
рекомендуется редактирование текста осуществлять в отдельной форме.
Общая форма "ФормаРедактированияТекста" предназначена для редактирования текста в отдельном окне.
Работа с текстом организована через поле текстового документа, что более удобно для работы с текстом, чем поле ввода.
Организовать работу с текстом в общей форме "ФормаРедактированияТекста" можно следующим образом:
1. Создать объект формы и установить заголовок
ФормаРедактирования = ПолучитьОбщуюФорму("ФормаРедактированияТекста");
ФормаРедактирования.Заголовок = "Редактирование важного текста";
2. Задать начальный текст
ФормаРедактирования.УстановитьРедактируемыйТекст("Важный текст");
3. Открыть форму для редактирования текста
Результат = ФормаРедактирования.ОткрытьМодально();
4. Получить результат редактирования текста, если форма при закрытии вернула "Истина"
В условии необходима проверка на равенство истина, так как при отмене редактирования форма вернет значение Неопределено.
Если Результат = Истина Тогда
ВажныйТекст = ФормаРедактирования.ПолучитьРедактируемыйТекст();
КонецЕсли;
Элементы управления
Общие требования к элементам управления
Использование свойства "Изменяет данные" для элементов управления формы объекта
Для элементов управления формы, не связанных напрямую с данными объекта, необходимо устанавливать свойство ИзменяетДанные в значение Истина в том случае, если изменение данных в элементе управления или воздействие на этот элемент управления(например, нажатие на кнопку) могут привести к изменениям данных объекта.
При несоблюдении данного правила:
- не будет выполняться установка свойства ТолькоПросмотр для данного ЭУ при установке в Истина этого свойства для формы в целом.
- при программном изменении данных объекта, вызываемом изменениями данных ЭУ или воздействием на ЭУ, попытки автоматической блокировки объекта не происходит, что может привести к невозможности его последующего сохранения, в том случае, если в это же время другой пользователь изменит данный объект.
Одним из примеров такого элемента управления может служить кнопка "Подбор" в формах документов, с помощью которой открывается обработка подбора и выполянется программное заполнение табличной части документа. При этом кнопка "Подбор" не связана с данными объекта.
Если документ уже изменен другим пользователем и заблокирован от изменения для текущего пользователя, то подбор и заполнение табличной части из сторонней обработки все равно можно производить, но сохранить эти изменения пользователь не сможет. При попытке сохранения документа будет выдано сообщение "Не удалось заблокировать запись. Действие (изменение, удаление или блокировка записи) не выполнено".
Если же у кнопки "Подбор" установить свойство ИзменяетДанные, то уже при попытке подбора будет возникать предупреждение о невозможности блокировки объекта.
Имя элемента управления
Для элементов управления с непустыми данными имя элемента управления должно совпадать с данными.
Для элементов управления с пустыми данными, но непустыми данными флажка имя элемента управления должно совпадать с данными флажка.
Если данные (данные флажка) указаны как свойство (через точку), тогда имя элемента управления образуется из имени данных (данных флажка) исключая точки.
В остальных случаях имя составляется из названия типа элемента управления и краткой расшифровки, поясняющей назначение элемента, например, "ПолеВыбораУсловияОтбора".
Для элементов управления, являющихся частью специально разработанных групп ЭУ, имена образуются по общим правилам, если особо не оговорено в описании группы ЭУ.
Если в форме в соответствии с правилом для нескольких элементов управления образуются одинаковые имена, один из элементов управления называется по правилу, а имена остальных образуются из имени по правилу с добавлением цифры, последовательно, начиная с "1".
Например, если поле ввода с данными Номер и подпись к нему отображаются на нескольких страницах панели в форме, то на разных страницах их нужно называть так:
"Номер", "НадписьНомер";
"Номер1", "НадписьНомер1";
"Номер2", "НадписьНомер2";
"Номер3", "НадписьНомер3";
и т.д.
Поле ввода
Дата: 2018-11-18, просмотров: 445.