Многие не жалуют управляемые формы, хотя они привнесли много прекрасных возможностей, например передача параметров при открытии формы. Многие скажут, что это не новшество и передавать параметры можно было и раньше, но теперь это выглядит иначе и функционал значительно расширился.
В обычных формах можно было реализовать параметры следующим образом:
У нас есть две формы, во второй мы создаем новый реквизит, например «Число», мы можем его добавить либо через интерфейс, либо через код:
Перем Число Экспорт;
В первой форме на кнопку можно повесить команду:
Форма = Объект.ПолучитьФорму("ВтораяФорма");
Форма.Число = "123"; //"Форма.Число" – Это тот самый реквизит который мы создали, производим помещение мы на передатчике, а не приемнике.
Форма.Открыть();
Проблема такого варианта заключается в том, что это «местечковое» решение и глобально гораздо проще утонуть в подобном коде.
В управляемых формах появились параметры, которые позволяют передавать такие реквизиты.
Выглядит это следующим образом, создаем примерную обработку и две формы к ней:
Соответственно создаем и в первой и второй необходимые для нас реквизиты, во второй так же создаем параметры, которые наша форма будет принимать при создании.
В модуле первой у кнопки прописываем код:
&НаКлиенте
Процедура Передача(Команда)
НПараметры = Новый Структура; //Создаем структуру с нашими параметрами
НПараметры.Вставить("БулевоПередачи", БулевоПередачи); // укладываем их
НПараметры.Вставить("ТекстПередачи", ТекстПередачи);
//дальше открываем форму с параметрами
ВтораяФорма = ПолучитьФорму("ВнешняяОбработка.ОткрытиеФормы.Форма.ВтораяФорма", НПараметры);
ВтораяФорма.Открыть();
КонецПроцедуры
Во второй форме прописываем получение параметров:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Булево = Параметры.БулевоПередачи;
Текст = Параметры.ТекстПередачи;
КонецПроцедуры
В результате мы получаем следующее:
Так же многие формы стандартных конфигураций обзавелись стандартными параметрами, с которыми можно легко взаимодействовать.
К примеру, регистр сведений ФИОФизическихЛиц в Бухгалтерии предприятии
Специалист компании ООО « Кодерлайн »