Имя: Пароль:
1C
 
1с 8 УПП 1.3.61.2 Как сформировать внешний отчет из общего модуля?
0 Kleo
 
18.03.15
12:53
Здравствуйте!

Есть общий модуль в конфигурации, из которого вызывается формирование отчета из конфигурации, например:

Отчеты.КнигаПродаж1137.СформироватьОтчет(ПараметрыРаздел9, АдресХранилища);


так вот как из этого же самого модуля сформировать не типовой отчет из дерева конфигурации, а внешний отчет?
1 Kleo
 
18.03.15
13:05
например, чтобы сформировался отчет из Справочника "ВнешниеОбработки"
2 ДенисЧ
 
18.03.15
13:06
ПОдключить файл, создать объект обработки и вызвать метод
3 Kleo
 
18.03.15
13:10
(2) какой метод? как написать правильно?

Справочники.ВнешниеОбработки. .... а так? и дальше что?

или не так? тогда что написать?
4 John83
 
18.03.15
13:33
даже лень поиском пошерстеть
ВнешОтчет = Справочники.ВнешниеОбработки.НайтиПоНаименованию("Рабочий стол (отчет)");
Если ВнешОтчет <> Справочники.ВнешниеОбработки.ПустаяСсылка() Тогда
    ДвоичныеДанные = ВнешОтчет.ХранилищеВнешнейОбработки.Получить();
    ИмяФайла = ПолучитьИмяВременногоФайла();
    ДвоичныеДанные.Записать(ИмяФайла);
    
    Обработка = ВнешниеОтчеты.Создать(ИмяФайла);
    Обработка.ПолучитьФорму().Открыть();
КонецЕсли;
5 Kleo
 
18.03.15
14:19
(4) Спасибо! Но мне открывать форму отчета не нужно. Мне нужно его сформировать из общего модуля!

например, как:

Отчеты.КнигаПродаж1137.СформироватьОтчет(ПараметрыРаздел9, АдресХранилища);


только внешний!
6 Kleo
 
18.03.15
14:21
а можно так?

ВнешОтчет = Справочники.ВнешниеОбработки.НайтиПоНаименованию("Рабочий стол (отчет)");
Если ВнешОтчет <> Справочники.ВнешниеОбработки.ПустаяСсылка() Тогда
    ДвоичныеДанные = ВнешОтчет.ХранилищеВнешнейОбработки.Получить();
    ИмяФайла = ПолучитьИмяВременногоФайла();
    ДвоичныеДанные.Записать(ИмяФайла);
    
    Обработка = ВнешниеОтчеты.Создать(ИмяФайла);
    Обработка.СформироватьОтчет(ПараметрыРаздела9, АдресХранилища); // ВОТ ЭТА СТРОКА!!!
КонецЕсли;
7 John83
 
18.03.15
14:38
(6) так и быть... я сегодня добрый и щедрый - разрешаю
8 Kleo
 
18.03.15
15:10
7) :)

Правильно в (6) или нет?
9 Kleo
 
18.03.15
15:10
не было времени попробовать....