|
Нет расшифровки в отчете, что не так? | ☑ | ||
---|---|---|---|---|
0
kiabs
07.11.12
✎
14:18
|
На форме есть ТабличныйДокумент(ТабДок), в который выводится отчет.
Все работает как надо, но нет данных расшифровки! Что я делаю не так? (Уже реализовывал аналогичным способом, но с внешним набором данных, и все работает, а тут нет) Отчет = Отчеты.НекийОтчет.Создать(); Отчет.СхемаКомпоновкиДанных.НаборыДанных.НаборДанных1.Запрос = ТекстЗапроса; ДанныеРасшифровки = Неопределено; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных , Отчет.КомпоновщикНастроек.Настройки, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина); ТабДок.Очистить(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ТабДок); ПроцессорВывода.Вывести(ПроцессорКомпоновки); |
|||
1
kiabs
07.11.12
✎
14:24
|
Попробовал вот так, такая же беда...
Отчет.СхемаКомпоновкиДанных.НаборыДанных.НаборДанных1.Запрос = ТекстЗапроса; ДанныеРасшифровки = Неопределено; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных , Отчет.КомпоновщикНастроек.Настройки, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина); ТабДок.Очистить(); Отчет.СкомпоноватьРезультат(ТабДок, ДанныеРасшифровки); |
|||
2
kiabs
07.11.12
✎
15:24
|
какого хрена у меня В расшифровке кол-во элементов =0 ?????
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных , Отчет.КомпоновщикНастроек.Настройки, ДанныеРасшифровки); йцу = ДанныеРасшифровки.Элементы.Количество(); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина); йцу2 = ДанныеРасшифровки.Элементы.Количество(); |
|||
3
vmv
07.11.12
✎
15:50
|
(2)
того хрена, что строка в вашем г-коде ДанныеРасшифровки = Неопределено; говорит нам о том, что ДанныеРасшифровки - это переменная, а должен быть РеквизитФормы типа строка, который должен быть выбран в палитре свойств формы отчета как значение свойства формы ДанныеРасшифровки. Это первый хрен Если вы получаете отчет не на форме а прграммно, то грамотные спецы делают это так ДанныеРасшифровкиКомпоновки = Новый ДанныеРасшифровкиКомпоновкиДанных; ОтчетОбъект.СкомпоноватьРезультат(ТабДокРезультат, ДанныеРасшифровкиКомпоновки); ДанныеРасшифровки = ПоместитьВоВременноеХранилище(ДанныеРасшифровкиКомпоновки, ЭтаФорма.УникальныйИдентификатор); УИд в последней строке кода тот, откуда вызов отчета или свой уид-переменная |
|||
4
kiabs
08.11.12
✎
10:11
|
(3) А как быть если Форма не управляемая?
|
|||
5
cw014
08.11.12
✎
10:14
|
У меня даже слов нет
|
|||
6
kiabs
08.11.12
✎
10:19
|
Я уже второй день над это расшифровкой туплю. У меня отчет формируется в ТабДок на форме внешней обработки.
|
|||
7
kiabs
08.11.12
✎
10:20
|
Что не так?
НовДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных , Отчет.КомпоновщикНастроек.Настройки, НовДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , НовДанныеРасшифровки, Истина); Идентификатор = Новый УникальныйИдентификатор(); ДанныеРасшифровки = ПоместитьВоВременноеХранилище(НовДанныеРасшифровки, Идентификатор); ТабДок.Очистить(); //ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; //ПроцессорВывода.УстановитьДокумент(ТабДок); //ПроцессорВывода.Вывести(ПроцессорКомпоновки); Отчет.СкомпоноватьРезультат(ТабДок, НовДанныеРасшифровки); |
|||
8
Aprobator
08.11.12
✎
10:29
|
(4) смотри расширение формы отчета и обработки.
|
|||
9
Aprobator
08.11.12
✎
10:37
|
(7) ужас. Лови:
и все. |
|||
10
Aprobator
08.11.12
✎
10:44
|
а млин, тут вообще кирдык. У тебя отчет вызывается откуда то и ты его данные расшифровки хочешь куда нибудь запихать еще? Прелестно.
|
|||
11
kiabs
08.11.12
✎
10:48
|
(10) Вот именно! У меня есть сложная обработка и в ее табл поле должен формироваться отчет, причем в этот отчет текст запроса присваивается различный (но поля в СКД всегда отни и те же), все отрабатывает, вот расшифровку как прикрутить ХЗ!!!
|
|||
12
Aprobator
08.11.12
✎
10:54
|
у обработки - никак. Был бы отчет - другое дело.
|
|||
13
Aprobator
08.11.12
✎
10:55
|
В конце концов обработку для выполнения каких то действий можно вызывать и программно.
|
|||
14
Aprobator
08.11.12
✎
10:55
|
хотя, может и вру.
|
|||
15
Aprobator
08.11.12
✎
10:56
|
Данные расшифровки то можно положить отдельно.
|
|||
16
Aprobator
08.11.12
✎
10:56
|
но событие обработки расшифровки придется всяко прописывать ручками.
|
|||
17
kiabs
08.11.12
✎
11:00
|
(16) Уже делаю, позже отпишу, что получилось.
|
|||
18
kiabs
08.11.12
✎
11:10
|
В общем убрал стандартную обработку расшифровки и взлетело.
Процедура ТабДокОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(ПолучитьАдресСКД()); ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки ,ИсточникДоступныхНастроек); Результ = Неопределено; Параметр = Неопределено; ОбработкаРасшифровки.ВыбратьДействие(Расшифровка,Результ,Параметр); Если Параметр<>Неопределено тогда ОткрытьЗначение(Параметр); КонецЕсли; КонецПроцедуры Функция ПолучитьАдресСКД() СхемаКомпДанных = Отчеты.МойОтчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); АдресСКД = ПоместитьВоВременноеХранилище(СхемаКомпДанных); Возврат АдресСКД; КонецФункции |
|||
19
kiabs
08.11.12
✎
11:10
|
Всем большое спасибо!
|
|||
20
Aprobator
08.11.12
✎
11:19
|
(18) прикольный код. Уж если тебе только одно действие расшифровки требуется, так сделай ограничение то.
|
|||
21
kiabs
08.11.12
✎
12:16
|
(20) Мне нужно, что бы как в стандартном отчете работало.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |