Имя: Пароль:
1C
1С v8
ошибка при формировании отчета
0 STAYEKR
 
30.08.12
16:38
Доброго здоровья всем! Пытаюсь оформить отчет на СКД. В отчете 3 набора данных Запрос и Внешний набор данных (таблица, формирующаяся в отдельном модуле). Количество полей в каждом из наборов данных одинаковое (2). Данные из всех наборов нужно выводить в виде диаграммы. Прочитал лекции по СКД про объект "Объединение", выполнил с адаптацией к внешнему набору. При формировании отчета падает ошибка "Не установлен менеджер временных таблиц". В каждом из наборов данных (отдельно в каждом) используются временные таблицы. Решение подобной ошибки найти не смог, поэтому обращаюсь з помощью к Гуру и Гуриям Всемогущей Мисты. Буду благодарен за любую полезную информацию!
1 vmv
 
30.08.12
16:39
запросы сделай пакетными и забудь про менеджер, крой топ
2 vmv
 
30.08.12
16:40
(1) и результирующий запрос набора не должен быть ВТ
3 STAYEKR
 
30.08.12
16:40
(1)поясните, пжлста, что есть "крой топ"?
4 STAYEKR
 
30.08.12
16:43
+(3) Каждый отдельный набор данных содержит пакетные запросы (если я не ошибаюсь, по крайней мере, соответствующие вкладки в конструкторе отображаются). Результирующие наборы точно не ВТ, тк в консоли отрбабтывают по отдельности отлично
5 STAYEKR
 
30.08.12
16:45
энибадиноус?
6 pessok
 
30.08.12
16:47
(0) ошибка не в скд, а в модуле формирвоания внешнего источника данных. убей там вт и сделай пакетами уже
7 GANR
 
30.08.12
16:51
(0)Я когда-то сделал так:

   НаборДанных = СКД.НаборыДанных.Добавить(Тип("НаборДанныхОбъектСхемыКомпоновкиДанных"));
   НаборДанных.Имя = "ОсновнойНабор";
   НаборДанных.ИсточникДанных = "ИсточникДанных";
   НаборДанных.ИмяОбъекта = "ОсновнаяТаблица";
       
   ПоляНабора = НаборДанных.Поля;
       
   Запрос = Новый Запрос(ТекстЗапроса);
   ТаблЗнач = Запрос.Выполнить().Выгрузить();
   
   ВнешниеНаборы = Новый Структура;
   ВнешниеНаборы.Вставить("ОсновнаяТаблица", ТаблЗнач);
       
   Для Каждого Колонка Из ТаблЗнач.Колонки Цикл
           
       Если Колонка.ТипЗначения.СодержитТип(Тип("ТаблицаЗначений")) Тогда
       ТаблЗнач.Колонки.Удалить(Колонка.Имя);
           Продолжить;            
       КонецЕсли;              
           
       НовоеПоле = ПоляНабора.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
       НовоеПоле.Поле = Колонка.Имя;            
       НовоеПоле.ПутьКДанным = Колонка.Имя;
       НовоеПоле.Заголовок = Колонка.Заголовок;
       НовоеПоле.ТипЗначения = Колонка.ТипЗначения;
           
   КонецЦикла;
       
   АдресВнешниеНаборы = ПоместитьВоВременноеХранилище(ВнешниеНаборы, ЭтаФорма.УникальныйИдентификатор);
       
   ПоместитьВоВременноеХранилище(СКД, АдресСКД);        
   КомпоновщикНастроек.ЗагрузитьНастройки(Новый НастройкиКомпоновкиДанных);
       
   идн = Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСКД);
   КомпоновщикНастроек.Инициализировать(идн);

работает и не жужжит до сих пор...
8 STAYEKR
 
30.08.12
16:53
(6) Ткните, пожалуйста, носом. Где здесь ВТ?

ВЫБРАТЬ
   |    Рег1.1 КАК 1,
   |    Рег1.2 КАК 2,
   |ИЗ
   |    РегистрСведений.Рег1 КАК Рег1
   |
   |УПОРЯДОЧИТЬ ПО
   |    Рег1.1.1,
   |    2
   |ИТОГИ ПО
   |    1

В дальнейшем выборка из этого запроса используется для формирования внешнего источника
9 GANR
 
30.08.12
16:54
(8)Когда-же в СКД ИТОГИ работали???
Да и ещё - не забудьте передать структуру внешних наборов данных процессору компоновки на этапе формирования отчета:

   ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
   ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ПолучитьИзВременногоХранилища(АдресВнешниеНаборы), др);
10 STAYEKR
 
30.08.12
16:55
(7) А куда лепить-то Вашу конструкцию? Отдельный модуль создавать?
11 STAYEKR
 
30.08.12
16:57
(9) На внешнее хранилище он ругается, а так в целом передается норм. У меня несколько СКД. В каждой еще вложенных туева хуча. Все работают норм, но они простенькие. А вот с объе(б/д)инением ника не разбирусь
12 GANR
 
30.08.12
16:58
(11) ))))
>несколько СКД. В каждой еще вложенных туева хуча.
Тяжелый случай
13 STAYEKR
 
30.08.12
17:00
(12)Даа, фантазия у меня богатая))
Только вот еще вопрос: тот листинг. который я привел выше, он ни разу не из СКД. Лежит себе тихонько в общем модуле. Модно ли как-то при перемещении его в СКД "урезать" ему итоги?
14 GANR
 
30.08.12
17:00
(11) Колонки таблиц значений все протипизированы? Без этого точно не заработает.
15 pessok
 
30.08.12
17:02
(8) что значит выборка из ЭТОГО? это УЖЕ выборка до тех пор, пока ты не поместишь ее в ВТ
16 STAYEKR
 
30.08.12
17:02
(14) Простите за совсем уж глупый вопрос: а что есть протипизированы? Как это можно посмотреть?
17 pessok
 
30.08.12
17:03
(15) а, сорри. так и говори, по желтому: "результат этого запроса исползуется для ВИД"
18 STAYEKR
 
30.08.12
17:03
(15) Простите, ошибся. Но сути это не меняеят
19 pessok
 
30.08.12
17:04
(16) при создании ТЗ-источник для ВТ ты у колонок второй параметр создавал?
20 pessok
 
30.08.12
17:04
(19) пора домой, что-то я сам уже по-русски писать не могу
21 GANR
 
30.08.12
17:05
(13)(18)

ВыборкаИтог = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаИтог.Следующий() Цикл
   Выборка = ВыборкаИтог.Выбрать();
   Пока Выборка.Следующий() Цикл
       //вот тут и будет перебор выборки с "выкинутыми" итогами
       //остается только в ТЗ пихнуть и передать в СКД
   КонецЦикла;
КонецЦикла;
22 STAYEKR
 
31.08.12
09:38
(21)Муть какая-то. Пишу по аналогии с Вашим постом:
...
Выборка1 = Запрос1.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Поле1");
...
Пока Выборка1.Следующий() Цикл
   НовСтр = Неопределено;
   Выборка2 = Выборка1.Выбрать();
Пока Выборка2.Следующий() Цикл
   Если НовСтр <> Неопределено Тогда
   НовСтр.КонецДействия = (ВыборкаД2.Период - 1);
   КонецЕсли;
   НовСтр = Таблица.Добавить();
   НовСтр.Колонка1= Выборка2.1;
   НовСтр.Колонка2    = Выборка2.2;
   НовСтр.Колонка3    = Выборка2.3;
   НовСтр.Колонка4 = Выборка2.4
КонецЦикла;


И все равно валится с этой ошибкой? Что сейчас делаю не так?
23 STAYEKR
 
31.08.12
09:40
И все куда-то разбежались :(
24 STAYEKR
 
31.08.12
09:47
энибадиноус?
25 STAYEKR
 
31.08.12
09:55
еще разочек подниму
26 STAYEKR
 
31.08.12
10:07
ВверЬх
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс