Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   как программно открыть родную форму отчета с готовым результатом? (http://forums.kuban.ru/f1040/kak_programmno_otkryt-_rodnuyu_formu_otcheta_s_gotovym_rezul-tatom-3026253.html)

Gorr 05.09.2012 14:25

как программно открыть родную форму отчета с готовым результатом?
 
БГУ
делаю так:
отчет = Отчеты.МЗ_ВедомостьОстатков.Создать();
отчет.ПолучитьФорму().Открыть();
или так:
ПараметрыФормы = Новый Структура("Отбор, СформироватьПриОткрытии", УсловияОтбора, Истина);
ОткрытьФорму("Отчет.МЗ_ВедомостьОстатков.ФормаОбъекта", ПараметрыФормы);
форма открывается но для появления отчета еще нужно нажать на кнопочку "Сформировать". Хотелось бы открыть "родную" форму отчета с готовым результатом.

VZ 05.09.2012 14:43

Запоминаешь сформированный отчет в файле. Делаешь кнопочку "Показать всегда приятный отчет". В модуль прописываешь открытие бережно сохраненного.
Profit.

Uho 05.09.2012 15:01

0-Gorr > форма то управляемая?

Gorr 05.09.2012 15:37

1 вот это уже еще сложнее - 2 шага вместо одного. непонятно зачем так
2 форма обычная, конфа БГУ.

Uho 05.09.2012 16:01

3-Gorr > тогда причем здесь СформироватьПриОткрытии?

Uho 05.09.2012 16:09

экспортной процедуры там нет (типа ОбновитьОтчет() по аналогии с БП)?

Gorr 05.09.2012 16:36

5 есть в модуле формы как раз ОбновитьОтчет(). Только она загружает настройки по умолчанию. Там в настройках есть "ПараметрыДанных" без предварительной установки которых формирование отчета не имеет смысла, а ОбновитьОтчет() перезаписывает "ПараметрыДанных" настройками по умолчанию. пока ковыряю. мрак это какойто..

VZ 05.09.2012 16:38

6-Gorr > Научи юзера пользоваться пунктом меню "сохранить как...".
И оставь бабушку в покое.

Uho 05.09.2012 16:38

эээ... неее.. в модуле объекта смотри экспортные процедуры

Gorr 05.09.2012 16:46

7. это уже вопрос принципа))
а для бабки пойдет и так:
Схема = Отчеты.МЗ_ВедомостьОстатков.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройки = Схема.НастройкиПоУмолчанию;

Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Счет",Счет);

КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

Макет = КомпоновщикМакета.Выполнить(Схема, Настройки);

ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(Макет);

ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ТабДок = Новый ТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ТабДок);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
ТабДок.Показать();


Текущее время: 16:07. Часовой пояс GMT +3.