Открытие формы
Формы — это основной вид диалога с пользователем. Все справочники, документы, журналы, отчеты и обработки имеют экранные формы. Обычно форма открывается пользователем интерактивно (мышкой), но форму можно открыть и программно.
Конт = 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);
Процедура ОбработкаПодбора(Элемент,КонтФормы)
…НоваяСтрока();
…Товар = Элемент;
КонецПроцедуры