![]() |
![]() |
![]() |
|
Скд - внешний набор данных | ☑ | ||
---|---|---|---|---|
0
mzelensky
08.10.12
✎
13:08
|
Хочу передать ТЗ в СКД, там что-то сделать и обратно получить тоже ТЗ
ПИШУ: ТЗ= ТабличнаяЧасть1.Выгрузить(); ВнешниеНаборыДанных = Новый Структура; ВнешниеНаборыДанных.Вставить("ТЗ",тз); СхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("Макет"); Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ,истина ); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; Табл = ПроцессорВывода.Вывести(ПроцессорКомпоновки); |
|||
1
mzelensky
08.10.12
✎
13:09
|
Ругается на этой строке:
Табл = ПроцессорВывода.Вывести(ПроцессорКомпоновки); "Неизвестный тип макета" эт что? |
|||
2
Maxus43
08.10.12
✎
13:14
|
эт надо открыть книгу хрусталёвой на стр 480
|
|||
3
mzelensky
08.10.12
✎
13:25
|
(2) ну где я ее сейчас найду?
|
|||
4
Maxus43
08.10.12
✎
13:28
|
чото типа вот:
ПроцессорВывода.УстановитьОбъект(ТвояТЗ); ПроцессорВывода.Вывести(ПроцессорКомпоновки); |
|||
5
mzelensky
08.10.12
✎
13:29
|
(4) я так делал:
ТЗ= ТабличнаяЧасть1.Выгрузить(); ВнешниеНаборыДанных = Новый Структура; ВнешниеНаборыДанных.Вставить("ТЗ",тз); СхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("Макет"); Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ,истина ); Табл=новый таблицаЗначений(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(Табл); ПроцессорВывода.Вывести(ПроцессорКомпоновки); |
|||
6
Maxus43
08.10.12
✎
13:31
|
(5) и?
|
|||
7
mzelensky
08.10.12
✎
13:33
|
(6) тоже самое - ""Неизвестный тип макета""
|
|||
8
Maxus43
08.10.12
✎
13:36
|
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки,,,Тип("
генератормакетакомпоновкиданныхдляколлекциизначений")); |
|||
9
organizm
08.10.12
✎
13:37
|
может у ТЗ ситоит типы колонок определить...
|
|||
10
mzelensky
08.10.12
✎
13:40
|
При этом если меняю только это:
ТабДок=новый табличныйДокумент; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ТабДок); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); т.е. вывожу не в ТЗ, а в Табличный док (больше ничего не меняю) - все работает! |
|||
11
Maxus43
08.10.12
✎
13:40
|
(10) в (8) не шутка, прям дословно пиши
|
|||
12
mzelensky
08.10.12
✎
13:42
|
(8) вставил, получил:
{Форма.Форма.Форма(13)}: Ошибка при вызове метода контекста (Выполнить) МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, , ,Тип("генератормакетакомпоновкиданныхдляколлекциизначений")); по причине: Ошибка компоновки макета по причине: Ошибка генерации макета по причине: Не поддерживается вывод таблиц, диаграмм и вложенных отчетов в универсальную коллекцию значений |
|||
13
Maxus43
08.10.12
✎
13:43
|
(12) щас думай, всё по русски
|
|||
14
mzelensky
08.10.12
✎
13:46
|
(13) ну не мучай, я уже пару часов на это убил :(
|
|||
15
mzelensky
08.10.12
✎
13:46
|
(14) + почему онане поддерживается и как решить?!
|
|||
16
Maxus43
08.10.12
✎
13:47
|
(15) да потому что не поддерживается, как ты себе представляеш вывод Диаграммы например в ТЗ? настройка у СКД должна быть такая чтоб в ТЗ имело смысл её ложить
|
|||
17
mzelensky
08.10.12
✎
13:48
|
(16)все, понял :)
|
|||
18
mzelensky
08.10.12
✎
13:49
|
(16) я до этого выводил в Таблицу...хотя по мне так это логично - результат в виде таблицы выводить в таблицу значений!
Сделал вывод в список значений (в настройках самой СКД) и оно вывелось. |
|||
19
Maxus43
08.10.12
✎
13:51
|
(18) не совем логично, ибо таблицы в СКД - что-то типа вложенного отчета
|
|||
20
Maxus43
08.10.12
✎
13:51
|
(19) + и их несколько может быть и т.д.
|
|||
21
mzelensky
08.10.12
✎
13:53
|
А почему вотэто надо прописывать, вроде как параметр не обязательный ведь:
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки,,,Тип(" генератормакетакомпоновкиданныхдляколлекциизначений")); |
|||
22
Maxus43
08.10.12
✎
13:56
|
(21) необязателен, потому что есть значение по умолчанию у него, а оно для вывода в ТП, а не в другие штучки-дрючки
|
|||
23
mzelensky
08.10.12
✎
14:11
|
Ок, спасибо!
А можно еще тогда вопрос. Я кинул на форму элемент ОТБОР и связал его со своим компоновщиком. Получается я могу теперь в отборе добавлять ограничения. А как передать этот отбор ? |
|||
24
Maxus43
08.10.12
✎
14:24
|
(23) зачем передавать? он уже сам на форме, и меняеш ты именно его.
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки); тут они и передаются |
|||
25
mzelensky
08.10.12
✎
14:46
|
(24) сейчас вот так прописал:
ТЗ= ТабличнаяЧасть1.Выгрузить(); ВнешниеНаборыДанных = Новый Структура; ВнешниеНаборыДанных.Вставить("ТЗ",тз); СхемаКомпоновкиДанных =ЭтотОбъект.ПолучитьМакет("Макет"); //Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; Настройки = КомпоновщикНастроек.ПолучитьНастройки(); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.ПолучитьНастройки() , ДанныеРасшифровки , ,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки ); Табл=новый таблицаЗначений(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(Табл); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); Для каждого Ст из Табл цикл Сообщить(Ст); КонецЦикла; |
|||
26
mzelensky
08.10.12
✎
14:54
|
все, заработало...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |