Открытие формы
Формы – это основной вид диалога с пользователем. Все справочники, документы, журналы, отчеты и обработки имеют экранные формы. Обычно форма открывается пользователем интерактивно (мышкой), но форму можно открыть и программно.
Конт = 0; //контекст формы (ссылка на форму)
ОткрытьФорму(“Справочник.Сотрудники.Основная”,Конт); //открыть форму списка справочника
ОткрытьФорму(ВыбрСотрудник); //открыть форму элемента справочника
ОткрытьФорму(“Отчет.ГлавнаяКнига”);
ОткрытьФорму(“Документ.ПриемНаРаботу”,Конт); //новый документ
//можно открыть форму модально и еще можно передать в форму параметр
//в модуле формы переданный параметр доступен через конструкцию Форма.Параметр
ОткрытьФормуМодально(“Обработка.УсловияПоиска”,10);
Элементы диалога на форме
В модуле формы к элементам диалога можно обращаться по их идентификаторам через конструкцию Форма.ЭлементДиалога
Форма.Сотрудник.Доступность(1); //сделать доступным
Форма.Сотрудник.Доступность(0); //сделать недоступным
Форма.Сотрудник.Видимость(1); //сделать видимым
Форма.Сотрудник.Видимость(0); //сделать невидимым
//можно менять заголовки на кнопке и на других элементах диалога
Форма.Кнопка.Заголовок(“Далее >>”);
Форма.Кнопка.Заголовок(“Готово!”);
//можно менять цвет элементов диалога
Если ВыбрСотрудник.Выбран()=0 Тогда
… Форма.Надпись_Сотрудник.Цвет(200,50,50); //красный, зеленый, синий (RGB)
….Активизировать(“ВыбрСотрудник”);
Иначе
… Форма.Надпись_Сотрудник.Цвет(0,0,0);
КонецЕсли;
Слои и закладки на форме
Форма может состоять из нескольких слоев. Каждый слой может быть показан или скрыт в любой комбинации с другими слоями.
Синтаксис: Форма.ИспользоватьСлой(<ИмяСлоя>,[<Режим>])
//показать слой Основной
Форма.ИспользоватьСлой(“Основной”,1);
//скрыть слой Основной
Форма.ИспользоватьСлой(“Основной”,0);
//показать слой Основной и скрыть все остальные
Форма.ИспользоватьСлой(“Основной”,2);
//показать слой Основной и Фон и скрыть все остальные
Форма.ИспользоватьСлой(“Основной,Фон”,2);
//закладки на форме реализуются с помощью слоев
Форма.ИспользоватьЗакладки(1);
Форма.Закладки.ДобавитьЗначение(1, “Закладка 1”);
Форма.Закладки.ДобавитьЗначение(2, “Закладка 2”);
Процедура ПриВыбореЗакладки(НомерЗакладки, ЗначениеЗакладки)
….Если НомерЗакладки = 1 Тогда
……Форма.ИспользоватьСлой(“Фон,Шаг1”);
…Иначе
……Форма.ИспользоватьСлой(“Фон,Шаг2”);
…КонецЕсли;
КонецПроцедуры
Подбор
Функция подбора позволяет выбирать несколько значений из справочника или другого объекта, не закрывая его. Например, есть документ РасходнаяНакладная, в котором пользователь может указать несколько товаров.
Синтаксик: ОткрытьПодбор(<Объект>,<ИмяФормы>,<КонтекстФормы>,<ФлагМножВыбора>,<ТекЗнач>)
ОткрытьПодбор(“Справочник.Номенклатура”,”ФормаДляПодбора”,Конт,1);
Процедура ОбработкаПодбора(Элемент,КонтФормы)
…НоваяСтрока();
…Товар = Элемент;
КонецПроцедуры