Имя: Пароль:
1C
 
Программно сформировать отчет
,
0 rt2000
 
19.08.16
14:45
Программно сформировать отчет на СКД, у меня получилось:
//Создаем табличный документ
    ТабличныйДокумент = Новый ТабличныйДокумент;  
        //Получаем схему компоновки данных
    Схема = Отчеты.ОстаткиТоваров.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
        //Получаем настройки по умолчанию компоновки
    Настройки = Схема.НастройкиПоУмолчанию;  
        //Создаем новый компановщик настроек компановки данных
    КомпоновщикНастроекДанных = Новый КомпоновщикНастроекКомпоновкиДанных;    
    КомпоновщикНастроекДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(Схема));    
    КомпоновщикНастроекДанных.ЗагрузитьНастройки(Схема.НастройкиПоУмолчанию);    
        //Заполняем параметр "Период"  
    Параметр = КомпоновщикНастроекДанных.Настройки.ПараметрыДанных.Элементы.Найти("Период");
    Параметр.Использование = Истина;
    Параметр.Значение = ТекущаяДата();    
        //Делаем отбор в настройках отбора компоновки данных
    Параметр = КомпоновщикНастроекДанных.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Параметр.ЛевоеЗначение = новый ПолеКомпоновкиДанных("Номенклатура");
    параметр.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Параметр.ПравоеЗначение = Номенклатура;
    
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    Макет = КомпоновщикМакета.Выполнить(Схема, КомпоновщикНастроекДанных.ПолучитьНастройки());  
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;    
    ПроцессорКомпоновки.Инициализировать(Макет);  
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;    
    ПроцессорВывода.УстановитьДокумент(ТабличныйДокумент);    
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);

    ТабличныйДокумент.Показать();
    //Отчет выведен, его надо сохранить!!!
    //////////////////////////////////////////////////////////////////////    
    ТабличныйДокумент.Записать(ПапкаАдреса +"/Отчет1.xls" ,ТипФайлаТабличногоДокумента.XLS);


ПРОБЛЕМА В ДРУГОМ:
Нужно программно сформировать рарусовский отчет. Они не используют компоновку, текст запроса хранится в макете. Я эти отчеты НЕ ПОНИМАЮ?
Сталкивались ли вы с рарусовкими отчетами?
1 rt2000
 
19.08.16
14:45
Вот пример отчета
http://dropmefiles.com/CSn64
Эти отчеты можно открыть в любой конфигурации.
2 Горогуля
 
19.08.16
14:46
да. нет
3 shuhard
 
19.08.16
14:46
(0)[Я эти отчеты НЕ ПОНИМАЮ? ]
да лан
4 rt2000
 
19.08.16
14:47
(3) Представляешь, и даже не шучу;)
5 Горогуля
 
19.08.16
14:48
(4) так сложно сказать отДействияФормыСформировать(ЭтаФорма, Кнопка);?
6 rt2000
 
19.08.16
14:50
(5) Да, это что то новое.
Можешь пример кода написать?
7 Горогуля
 
19.08.16
14:50
да как два байта...

// Обработчик нажатия кнопки Сформировать
Процедура ДействияФормыСформировать(Кнопка)

    отДействияФормыСформировать(ЭтаФорма, Кнопка);

КонецПроцедуры    //    ДействияФормыСформировать()
8 rt2000
 
19.08.16
14:53
(7) все равно не понимаю?
9 Mauser
 
19.08.16
14:54
(8) Это вопрос?
10 rt2000
 
19.08.16
14:55
(7) Яндекс о запросе "отДействияФормыСформировать", ничего не выдал и почитать нечего
11 Горогуля
 
19.08.16
14:55
(8) да
12 Горогуля
 
19.08.16
14:56
(10) не мои проблемы, в отчёте так и сказано
13 rt2000
 
19.08.16
14:59
(12) Думаю вопроса моего не понял, наверное разное имеем ввиду
14 Горогуля
 
19.08.16
14:59
(13) попробуй перейти на русский, я его хорошо понимаю
15 Mauser
 
19.08.16
15:01
(14) Тяжело быть отчетом
16 Очевидно
 
19.08.16
15:02
Процедуры и функции с префиксами "от" и "уд" - в общих модулях чтоль?
17 Горогуля
 
19.08.16
15:02
(15) ага. вечно не то показываешь
18 Горогуля
 
19.08.16
15:03
(16) ага
19 rt2000
 
19.08.16
15:04
Ребят, давайте серьезно
20 Горогуля
 
19.08.16
15:05
(19) что серьёзно? кури отДействияФормыСформировать и не сношай нам мозх
21 rt2000
 
19.08.16
15:07
(20) что такое отДействияФормыСформировать ?
22 Очевидно
 
19.08.16
15:07
(19) Попробуй глобальным поиском по конфигурации поискать "отДействияФормыСформировать" ...
23 Горогуля
 
19.08.16
15:09
(21) какой-то, мать его, метод общего глобального модуля. включи уже извилину и открой форму своего отчёта на вкладке модуль
24 hitodom
 
19.08.16
15:11
найди кнопку сформирвоать в отчете и включи отладчик
25 lodger
 
19.08.16
15:16
сложна :D
а где эта функция лежит то в итоге? в модулях формы и объекта таких нет. в типовой ут ессно такого тоже нет.
вангую, что модуль представлен без исходного текста?
26 rt2000
 
19.08.16
15:16
отДействияФормыСформировать нашел в конфигураторе.
Так же еще нашел несколько моментов, с которыми еще столкнулся.
Ребята, скажите с Рарусовскими отчетами имели дело и кто нибудь знает их?
27 lodger
 
19.08.16
15:17
(26) имел дело с их конфами. часто и много колдунство встречается. это не программисты, а мегапыхари. пыхают и колдуют.
28 Горогуля
 
19.08.16
15:18
>Так же еще нашел несколько моментов, с которыми еще столкнулся.
ещё бы ты их не нашёл, раз столкнулся
29 rt2000
 
19.08.16
16:16
(27) Колдуны это не хорошо
30 Mauser
 
19.08.16
16:20
(29) РПЦ проклинае?
31 Горогуля
 
19.08.16
16:22
спрашивал меня как-то поп. а как так? куча разных самых отраслёвок: и ювсалон, и аптеки, и турагентства. а управления приходом нет
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.