Какой набор свойств соответствует реквизиту управляемой формы
Редактор управляемых форм имеет более сложную структуру, чем редактор обычных; это следствие того, что элементы и команды располагаются на форме автоматически:
Форма может содержать как реквизиты самого объекта, так и чисто реквизиты формы; реквизиты объекта можно отличить по опции Использовать всегда:
Если в обычной форме разработчик в явном виде определяет местоположение для каждого реквизита или команды, то в управляемом приложении визуальный интерфейс программа отрисовывает сама; разработчик может влиять на особенности расположения, размерности, графического выделения объектов через их группировку в папки и настройку этих папок:
Также можно настроить отображение и для отдельных элементов:
***
Вопрос 03.61 экзамена 1С:Профессионал по платформе. Редактор управляемых форм содержит закладки…
- Диалог, Модуль, Реквизиты
- Форма, Модуль формы, Реквизиты
- Диалог, Модуль, Реквизиты, Команды формы
- Форма, Модуль, Элементы, Команды, Реквизиты, Параметры, Командный интерфейс
- Диалог, Модуль, Реквизиты, Элементы, Параметры, Команды формы, Командный
интерфейс
Правильный ответ четвертый, см. первый скрин в посте.
***
Вопрос 03.62 экзамена 1С:Профессионал по платформе. Настройки редактора управляемых форм определяются…
- Для всех форм в настройках параметров конфигуратора
- Только в настройках самой формы
- Общие в настройках конфигуратора и индивидуальные в настройке формы
- Платформой без возможности их изменений
Правильный ответ четвертый – в случае режима работы конфигуратора “Управляемое приложение” в настройках параметров конфигурации нет закладки Формы:
***
Вопрос 03.63 экзамена 1С:Профессионал по платформе. Какие типы элементов можно добавить на форму в редакторе управляемых форм?
- Поле, Кнопка, Таблица, Картинка, Группа, Декорация
- Поле, Кнопка, Таблица, Картинка, Диаграмма, Декорация
- Поле, Кнопка, Таблица, Картинка, Группа, Декорация, Диаграмма
- Поле, Кнопка, Таблица, Картинка, Группа, Декорация, Разделитель
Правильный ответ первый:
***
Вопрос 03.64 экзамена 1С:Профессионал по платформе. Как разместить в диалоге управляемой формы графические элементы,
например, диаграмму?
- Вызвать диалог вставки элементов управления и выбрать нужный элемент
- Добавить элемент “Поле” и выбрать и определить у него тип “Диаграмма”
- Добавить элемент “Поле” и связать с реквизитом, у которого задан тип “Диаграмма”
- Использовать панель инструментов для размещения элементов заданного типа на
форму
Правильный ответ третий. Создадим реквизит с этим типом:
и пропишем из формы связь с ним:
***
Вопрос 03.65 экзамена 1С:Профессионал по платформе. Какой набор свойств соответствует реквизиту управляемой формы?
- Имя, Тип
- Заголовок, Проверка заполнения
- Основной реквизит, Функциональные опции
- Просмотр, Редактирование
- Верны варианты 1 и 4
- Верны все варианты
Правильный ответ шестой – все эти варианты есть.
Причем, по ссылкам Просмотри и Редактирование открывается список ролей, для которых и можно выставить просмотр или редактирование.
***
Вопрос 03.66 экзамена 1С:Профессионал по платформе. Почему элемент “Полное наименование” отсутствует в доступных полях при настройке формы в режиме исполнения, хотя в редакторе
управляемой формы он есть?
- Ограничена видимость элемента по ролям
- Ограничена видимость реквизита формы по ролям
- Ограничена видимость реквизита объекта по ролям
Правильный ответ третий – Полное наименование это явно реквизит объекта, о чем говорит галка Использовать всегда.
***
Вопрос 03.67 экзамена 1С:Профессионал по платформе. Серый цвет флажка в настройке видимости элемента по ролям на форме
- Для элемента не доступно изменение видимости в режиме исполнения
- Видимость элемента определяется программно при создании формы
- Видимость по ролям наследуется из общей настройки видимости
Правильный ответ третий. Пример серого флажка виден в разборе вопроса 03.65.
***
Вопрос 03.68 экзамена 1С:Профессионал по платформе. Как узнать в редакторе управляемых форм, что реквизит используется
элементом управления?
- Выбрать реквизит формы и выполнить поиск ссылок на объект?
- Открыть палитру свойств реквизита и открыть свойство “Просмотр”
- Реквизиты, размещенные в форме, помечаются в редакторе реквизитов в колонке с
пиктограммой в виде квадрата - Открыть палитру свойств реквизита и открыть свойство “Редактирование”
Правильный ответ третий, выглядит это так:
***
Вопрос 03.69 экзамена 1С:Профессионал по платформе. Как осуществляется изменение размера элемента управления в диалоге управляемой форме?
- Средствами визуального редактирования диалога формы
- С помощью определенных свойств элемента управления
- С помощью макета размещения элементов на форме
Правильный ответ второй, см. выше.
***
Вопрос 03.70 экзамена 1С:Профессионал по платформе. Как в диалоге управляемой формы разместить элементы по горизонтали?
- Выбрать элементы и перетащить в нужное место на диалоге
- В свойстве элемента задать расположение относительно предыдущего
- Правила размещения могут быть заданы для всех элементов формы, либо на отдельные группы
Правильный ответ третий.
Источник
Редактор формы используется для создания и редактирования форм объектов прикладного решения. Формы объектов используются системой для визуального отображения данных в процессе работы пользователя.
Любая форма представляет совокупность нескольких составляющих:
- элементов — объектов, определяющих визуальное представление формы и осуществляющих взаимодействие с пользователем,
- командного интерфейса — совокупности команд, отображаемых в форме;
- реквизитов — объектов, данные которых форма использует в своей работе.
- команд — действий, которые определены в данной конкретной форме,
- параметров — объектов, значения которых характеризуют саму форму, используются при ее создании и остаются постоянными в процессе «жизни» формы,
- модуля — программы на встроенном языке, отвечающей за работу с элементами и за обработку событий;
Редактор формы содержит несколько закладок, обеспечивающих редактирование всех составляющих формы.
В отдельном окне, в нижней части редактора, отображается внешний вид формы в режиме 1С:Предприятие.
Редактирование элементов
Редактор форм позволяет разработчику использовать широкий набор возможностей для изменения внешнего вида формы — того вида, который форма будет иметь в режиме 1С:Предприятие. Перечислим основные из этих возможностей:
Страницы, закладки
Редактор форм позволяет добавлять в форму специальные элементы, которые помогают придать форме собственный узнаваемый стиль, сделать доступ к данным простым и понятным, а также разместить большой объем информации на ограниченной площади.
Редактор позволяет добавить в форму несколько элементов Группа — Страницы, каждая из которых может содержать несколько элементов Группа — Страница.
Например, форма документа может содержать один элемент Группа — Страницы, которому подчинены несколько элементов Группа — Страница с заголовками Изображение, Характеристики и Описание:
Тогда в режиме 1С:Предприятие она будет выглядеть следующим образом:
Заголовок каждой группы — страницы отображается на отдельной закладке. Разработчик имеет возможность задать режим отображения закладок: снизу или сверху:
Например, закладки можно расположить снизу:
Элементы
Редактор позволяет добавлять в форму различные элементы. Добавлять элементы можно с помощью команды добавления или путем перетаскивания реквизитов формы в дерево элементов:
Все элементы формы представляются в виде иерархической структуры, корнем которой является сама форма. Это позволяет быстро перемещаться к нужному элементу формы:
Располагая элементы выше/ниже в дереве, подчиняя их другим элементам и задавая свойства элементов-групп можно задавать порядок, в котором пользователь будет обходить элементы управления формы при вводе и редактировании данных. В режиме 1С:Предприятие элементы формы будут обходиться в порядке их иерархии и в соответствии с тем, какой тип группировки выбран для групп: вертикальная или горизонтальная.
Разделители
Разделители являются специальными элементами, с помощью которых возможно перераспределение пространства формы без изменения ее размеров. Платформа в режиме 1С:Предприятие самостоятельно добавляет эти элементы в форму. Разделитель обладает способностью «захватываться» мышью и перемещаться внутри формы в ее пределах с учетом возможности расположения других элементов и ориентации разделителя:
При перемещении разделителя, все элементы, связанные с разделителем, будут изменять свои размеры или перемещаться.
Модуль формы
Для редактирования модуля формы конфигуратор вызывает редактор текстов и модулей. Этот редактор предоставляет разработчику большое разнообразие возможностей для создания и изменения текста модуля. Подробнее…
Реквизиты формы
Редактирование реквизитов формы выполняется в списке, который позволяет создавать новые реквизиты, изменять имеющиеся и удалять ненужные реквизиты. Свойства реквизитов задаются с помощью палитры свойств.
Если у формы существует основной реквизит, определяющий поведение формы, отличное от типового, — он выделяется жирным шрифтом.
Командный интерфейс формы
Командный интерфейс формы редактируется в дереве. Основные ветви дерева содержат команды, добавленные в панель навигации окна, в котором будет показана форма, и в командную панель формы. Внутри каждой из этих ветвей команды разделены по стандартным группам.
Часть команд в командный интерфейс платформа добавляет автоматически. Наряду с этим разработчик самостоятельно может добавить в командный интерфейс команды, перетащив их из списка команд формы или из списка доступных глобальных команд. Для всех команд, добавленных в командный интерфейс, разработчик может задать их видимость для различных ролей, определенных в конфигурации.
Команды формы
Команды формы редактируются в списке. Разработчик имеет возможность добавить, удалить команды формы и задать их свойства с помощью палитры свойств. В том числе назначить для команды процедуру, которая будет выполняться при вызове этой команды пользователем.
На закладках Стандартные команды и Глобальные команды разработчику предоставляются списки команд, генерируемых платформой и доступных для использования в данной форме. Их свойства изменять нельзя, можно только добавлять их в форму.
С помощью мыши разработчик может перетащить команду в командный интерфейс формы. Также можно перетащить команду и прямо в дерево элементов, если нужно, например, отобразить эту команду в виде кнопки, расположенной в форме.
Параметры формы
Параметры формы редактируются в списке. Разработчик имеет возможность добавить, удалить параметры формы и задать их свойства с помощью палитры свойств.
Источник
Разбор небольших примеров того, как правильно открывать форму выбора (подбора) в управляемых формах, не прибегая к модальным окнам.
Продолжение статьи нашего друга starik-2005.
Статья будет состоять из нескольких приведенных примеров кода с описанием того, как прибегнуть к Подбору.
Пример 1.
Простой вызов формы выбора с одним возвращаемым результатом:
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
ПараметрыВыбора = Новый Структура(“РежимВыбора”,Истина);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) ///Событие формы
РезультатСсылка = ВыбранноеЗначение; ///Выбранное значение, вернет ссылку (документа в нашем примере)
КонецПроцедуры
Пример 2.
Выбор нескольких значений (документов или справочников) :
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить(“РежимВыбора”,Истина);
ПараметрыВыбора.Вставить(“МножественныйВыбор”,Истина);
ПараметрыВыбора.Вставить(“ЗакрыватьПриВыборе”,ложь);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора)
МассивСсылок = ВыбранноеЗначение; ///Вернётся массив с выбранными значениями (Даже если значение только одно )
КонецПроцедуры
В первых 2-х примерах мы использовали обработчик (Событие) формы “ОбработкаВыбора”.
Теперь рассмотрим пример с использованием “Обработки оповещения”, на мой взгляд более удобно )
Пример 3.
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить(“РежимВыбора”,Истина);
ПараметрыВыбора.Вставить(“МножественныйВыбор”,Истина); ///Если хотим несколько значений
ОбработкаВыбора = Новый ОписаниеОповещения(“ПриЗакрытииФормыВыбора”, ЭтаФорма,”ПодборРеализации”);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,
ЭтаФорма, , , , ОбработкаВыбора);
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытииФормыВыбора(Значение, ДопПараметры) Экспорт
//Дополнительные условия если необходимо
//Если ДопПараметры = “ПодборРеализации” тогда
Если Значение = Неопределено Тогда ///Если ничего не выбрать – вернется пустое значение (Неопределено)
Возврат;
КонецЕсли;
МассивДокументов = Значение ///Если Множественный Выбор – то вернется массив
//КонецЕсли;
КонецПроцедуры
Думаю многие не знают про фишку Оповещением “на Сервере”. То есть результат можно вернуть сразу на сервер без дополнительных условий. Работает до 8.3.13.1644, с 8.3.16.1063 этот метод недоступен.
Пример 4.
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить(“РежимВыбора”,Истина);
ПараметрыВыбора.Вставить(“МножественныйВыбор”,Истина); ///Если хотим несколько значений
ОбработкаВыбора = Новый ОписаниеОповещения(“ПриЗакрытииФормыВыбора”, ЭтаФорма,”ПодборРеализации”);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,
ЭтаФорма, , , , ОбработкаВыбора);
КонецПроцедуры
&НаСервере ///СЕРВЕР
Процедура ПриЗакрытииФормыВыбора(Значение, ДопПараметры) ///Процедура НЕ экспортная
Если Значение = Неопределено Тогда ///Если ничего не выбрать – вернется пустое значение (Неопределено)
Возврат;
КонецЕсли;
МассивДокументов = Значение ///Если Множественный Выбор – то вернется массив
КонецПроцедуры
Мы видим что открывается форма выбора (из списка документов “Реализация товаров и услуг”), но иногда необходимо добавить некий отбор, чтобы при открытии формы не выводить все документы в целом.
Допустим мы хотим выбрать из списка документы только с товаром, для этого установим отбор по “Виду операции”. Вид операции – это поле(реквизит) динамического списка, и отбор можно установить по всем доступным полям.
Пример 5.
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
///Создаем структуру с отбором и добавляем значения
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить(“ВидОперации”, ПредопределенноеЗначение(“Перечисление.ВидыОперацийРеализацияТоваров.Товары”));
//ПараметрыОтбора.Вставить(“Дата”, ТекущаяДата()); ///Дополнительный отбор
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить(“Отбор”, ПараметрыОтбора); ///Добавляем отбор в параметры формы
ПараметрыВыбора.Вставить(“РежимВыбора”,Истина);
ПараметрыВыбора.Вставить(“МножественныйВыбор”,Истина);
ОбработкаВыбора = Новый ОписаниеОповещения(“ПриЗакрытииФормыВыбора”, ЭтаФорма,”Подбор”);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,
ЭтаФорма, , , , ОбработкаВыбора);
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытииФормыВыбора(Значение, ДопПараметры) Экспорт
Если Значение = Неопределено Тогда
Возврат;
КонецЕсли;
МассивДокументов = Значение;
КонецПроцедуры
Есть моменты когда не всегда можно обойтись простым отбором, например необходимо открыть форму выбора со списком за определенный период.
Для этого передаем вместо Отбора -Фиксированные настройки в форму выбора.
Пример 6.
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
НастройкиКомпоновки = Новый НастройкиКомпоновкиДанных;
///Если хотим несколько условий
ГруппаОтбора = НастройкиКомпоновки.Отбор.Элементы.Добавить(Тип(“ГруппаЭлементовОтбораКомпоновкиДанных”));
ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
ЭлементОтбора = ГруппаОтбора.Элементы.Добавить(Тип(“ЭлементОтбораКомпоновкиДанных”));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(“ВидОперации”);
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = ПредопределенноеЗначение(“Перечисление.ВидыОперацийРеализацияТоваров.Товары”);
ЭлементОтбора = ГруппаОтбора.Элементы.Добавить(Тип(“ЭлементОтбораКомпоновкиДанных”));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(“Дата”);
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.больше;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = НачалоГода(ТекущаяДата());
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить(“ФиксированныеНастройки”, НастройкиКомпоновки);
ПараметрыВыбора.Вставить(“РежимВыбора”,Истина);
ПараметрыВыбора.Вставить(“МножественныйВыбор”,Истина);
ОбработкаВыбора = Новый ОписаниеОповещения(“ПриЗакрытииФормыВыбора”, ЭтаФорма,”Подбор”);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,
ЭтаФорма, , , , ОбработкаВыбора);
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытииФормыВыбора(Значение, ДопПараметры) Экспорт
Если Значение = Неопределено Тогда
Возврат;
КонецЕсли;
МассивДокументов = Значение
КонецПроцедуры
Пример 7.
Как открыть форму выбора с Позиционированием ранее выбранного значения:
&НаКлиенте
Процедура КомандаОткрытьФормуВыбора(Команда)
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить(“РежимВыбора”,Истина);
ПараметрыВыбора.Вставить(“МножественныйВыбор”,Ложь);
ПараметрыВыбора.Вставить(“ЗакрыватьПриВыборе”,ложь);
Если РанееВыбранныйДокумент <> Неопределено Тогда ///Реквизит формы, ранее выбранное значение из открываемой формы
ПараметрыВыбора.Вставить(“УстановитьПараметрыФункциональныхОпцийФормы”,Новый Структура(“ТекущаяСтрока”,РанееВыбранныйДокумент));
КонецЕсли;
ОбработкаВыбора = Новый ОписаниеОповещения(“ПриЗакрытииФормыВыбора”, ЭтотОбъект,”Подбор”);
ОткрытьФорму(“Документ.РеализацияТоваровУслуг.ФормаВыбора”,ПараметрыВыбора,
ЭтаФорма, , , , ОбработкаВыбора);
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытииФормыВыбора(Значение, ДопПараметры) экспорт
Если Значение = Неопределено Тогда
Возврат;
КонецЕсли;
МассивДокументов = Значение
КонецПроцедуры
Тестировалось на 1С:Предприятие 8.3 (8.3.16.1063) и 1С:Предприятие 8.3 (8.3.13.1644), Спасибо за внимание, возможно, кому-то поможет)
Источник