Имя: Пароль:
1C
1С v8
Формирование отчета
0 john_ddd
 
08.08.12
15:23
Процедура Кнопка1Нажатие(Элемент)
     ОтчетОстатки = Отчеты.Остатки.Создать();
     Форма = ОтчетОстатки.ПолучитьФорму("ФормаОтчета");
     Форма.Открыть();
КонецПроцедуры

Как можно при повторном нажатии на кнопку не открывать заново форму отчета, а сформировать его в уже открытой?
1 john_ddd
 
08.08.12
15:42
ответ:
Процедура Кнопка1Нажатие(Элемент)
     Если Не Отчеты.Остатки.ПолучитьФорму("ФормаОтчета").Открыта() Тогда
         ОтчетОстатки = Отчеты.Остатки.Создать();
         Форма = ОтчетОстатки.ПолучитьФорму("ФормаОтчета");
         Форма.Открыть();
     Иначе
          Форма = Отчеты.Остатки.ПолучитьФорму("ФормаОтчета");
          Форма.Открыть();    
     КонецЕсли;
КонецПроцедуры
2 zladenuw
 
08.08.12
15:43
Форма (Form)
КлючУникальности (UniqueKey)
Использование:

Чтение и запись.
Описание:

Тип: Произвольный.
Пользовательский идентификатор формы. Может быть автоматически назначен, если задан соответствующий параметр методов ПолучитьФорму... Используется для идентификации и поиска открытых форм.

Доступность:

Толстый клиент.
3 Wobland
 
08.08.12
15:44
(1) в первой ветке два раза получаешь форму
4 john_ddd
 
08.08.12
15:46
(3) согласен) оптимизировать надо чуток)
Ошибка? Это не ошибка, это системная функция.