как программно открыть родную форму отчета с готовым результатом? БГУ делаю так: отчет = Отчеты.МЗ_ВедомостьОстатков.Создать(); отчет.ПолучитьФорму().Открыть(); или так: ПараметрыФормы = Новый Структура("Отбор, СформироватьПриОткрытии", УсловияОтбора, Истина); ОткрытьФорму("Отчет.МЗ_ВедомостьОстатков.ФормаОбъекта", ПараметрыФормы); форма открывается но для появления отчета еще нужно нажать на кнопочку "Сформировать". Хотелось бы открыть "родную" форму отчета с готовым результатом. |
Запоминаешь сформированный отчет в файле. Делаешь кнопочку "Показать всегда приятный отчет". В модуль прописываешь открытие бережно сохраненного. Profit. |
0-Gorr > форма то управляемая? |
1 вот это уже еще сложнее - 2 шага вместо одного. непонятно зачем так 2 форма обычная, конфа БГУ. |
3-Gorr > тогда причем здесь СформироватьПриОткрытии? |
экспортной процедуры там нет (типа ОбновитьОтчет() по аналогии с БП)? |
5 есть в модуле формы как раз ОбновитьОтчет(). Только она загружает настройки по умолчанию. Там в настройках есть "ПараметрыДанных" без предварительной установки которых формирование отчета не имеет смысла, а ОбновитьОтчет() перезаписывает "ПараметрыДанных" настройками по умолчанию. пока ковыряю. мрак это какойто.. |
6-Gorr > Научи юзера пользоваться пунктом меню "сохранить как...". И оставь бабушку в покое. |
эээ... неее.. в модуле объекта смотри экспортные процедуры |
7. это уже вопрос принципа)) а для бабки пойдет и так: Схема = Отчеты.МЗ_ВедомостьОстатков.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки = Схема.НастройкиПоУмолчанию; Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Счет",Счет); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; Макет = КомпоновщикМакета.Выполнить(Схема, Настройки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(Макет); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ТабДок = Новый ТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ТабДок); ПроцессорВывода.Вывести(ПроцессорКомпоновки); ТабДок.Показать(); |
Текущее время: 16:07. Часовой пояс GMT +3. |