Имя: Пароль:
1C
1С v8
Не выполняется СКД программно
,
0 NickEl
 
23.04.12
09:38
Доброе время суток.
Делаю формирование схемы компоновки по кнопке из самого отчета:

Вот код:

ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
       
   Результат.Очистить();
   
   ОтчетОбъект =  РеквизитФормыВЗначение("Отчет");
   
   ОтчетОбъект.СкомпоноватьРезультат(Результат, ДанныеРасшифровки);
   ЭтаФорма.ДанныеРасшифровки = ДанныеРасшифровки;
   
   Результат.ФиксацияСлева=1;    
   ЗначениеВРеквизитФормы(ОтчетОбъект, "Отчет");

Отчет формируется, но после формирования он не активен. Пишется "Отчет не сформирован. Нажмите "Сформировать" для получения отчета".
Какой момент упущен ?
1 Rizhij_Nikitos
 
23.04.12
09:40
(0) если скажу ответ по книге Хрусталевой СКД, подойдет, страницу скажу, как формируется отчет объект.
2 Alex S D
 
23.04.12
09:42
вот кусок рабочего кода.. зачем 2 макета не знаю, не мое
   
ОтчетЗакупочныеЦены = Отчеты.ОтчетПоЗакупочнымЦенамСпецификация.Создать();
   МакетКомпоновки = ОтчетЗакупочныеЦены.СхемаКомпоновкиДанных;  
   КомпоновщикНастроек = ОтчетЗакупочныеЦены.КомпоновщикНастроек;
   КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(МакетКомпоновки));
   КомпоновщикНастроек.ЗагрузитьНастройки(МакетКомпоновки.НастройкиПоУмолчанию);
   КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

   ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
   МакетКомпоновки_ = КомпоновщикМакета.Выполнить(МакетКомпоновки, КомпоновщикНастроек.Настройки,данныеРасшифровки);  
   ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
   ПроцессорКомпоновки.Инициализировать(МакетКомпоновки_,,данныеРасшифровки);
   ФормаОтчета =    ОтчетЗакупочныеЦены.ПолучитьФорму("ФормаОтчета");
     
   ОтчетЗакупочныеЦены.СкомпоноватьРезультат(ФормаОтчета.ЭлементыФормы.Результат,ДанныеРасшифровки);
    ФормаОтчета.ДанныеРасшифровки =   ДанныеРасшифровки;
   ФормаОтчета.Открыть();
3 Rizhij_Nikitos
 
23.04.12
09:45
Е.Ю. Хрусталева
Разработка сложных отчетов 1С: Предприятии 8, Система Компоновки Данных, стр 73, там описание + листинг кода (рабочий), если делаю долго не мудрю беру оттуда.
4 NickEl
 
23.04.12
09:46
Забыл добавить: ПЛАТФОРМА 8.2

На 8.1 никаких проблем с данной задачей нет.
5 NickEl
 
23.04.12
10:36
По всякому пробовал писал.
Самое интересное, что отчет формируется, но при этом само поле табличного документа не активно и сверху надпись, что отчет не сформирован.
6 Aprobator
 
23.04.12
10:39
хм -  я бы посмотрел - какой реквизит формы связан с табличным полем формы.
7 NickEl
 
23.04.12
10:48
(6) Этот реквизит - "Результат". Тут я проблем не вижу.
8 Aprobator
 
23.04.12
14:38
кстати, для СкомпоноватьРезультат у управляемой формы другой синтаксис.
Поиск в СП занял минуту.
....
СкомпоноватьРезультат(РежимКомпоновки)
....
и все.
9 Aprobator
 
23.04.12
14:39
+(8) ключевое слово - Управляемая форма.
10 Rizhij_Nikitos
 
25.04.12
09:10
(9) а где он сказал, что у него управляемая форма?
11 Aprobator
 
25.04.12
10:00
(10) во первых платформа 8.2 и надпись - отчет не сформирован. Не припомню, чтоб такое на обычных формах писалось.
12 Aprobator
 
25.04.12
10:01
+(10) да и .... ЗначениеФормыВРеквизит..... на обычные нефига не тянет.
13 Rizhij_Nikitos
 
25.04.12
12:19
платформа 8.2 на обычной форме тоже работает ткоа в путь ) большинство там и работают ...
14 Aprobator
 
25.04.12
14:39
(13) код в  (0) смотри внимательно еще разок.