|
СКД не находит внешний набор данных | ☑ | ||
---|---|---|---|---|
0
dima1422
17.10.12
✎
09:30
|
Отчет запускаю в бухгалтерии 2.0.34.7
Платформа 8.2.16.352 В процедуре ПриКомпоновкеРезультата подключаюсь к другой базе и получаю таблицу значений, которую мне нужно передать в СКД, как внешний набор данных Далее пишу ТаблицаУНФ=ЗапросУНФ.Выполнить().Выгрузить(); Настройки = КомпоновщикНастроек.Настройки; Счет = Настройки.ПараметрыДанных.Элементы[2]; Счет.Значение =ПланыСчетов.Хозрасчетный.НайтиПоКоду("90.01.1"); Счет.Использование = Истина; СвойствоНоменклатуры=Настройки.ПараметрыДанных.Элементы[3]; СвойствоНоменклатуры.Значение= ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("002"); СвойствоНоменклатуры.Использование= Истина; СвойствоНоменклатуры2=Настройки.ПараметрыДанных.Элементы[4]; СвойствоНоменклатуры2.Значение= ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("003"); СвойствоНоменклатуры2.Использование= Истина; ВнешниеНаборыДанных = Новый Структура; ВнешниеНаборыДанных.Вставить("ТаблицаУНФ",ТаблицаУНФ); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); При выполнении пишет ошибку : "Ошибка создания набора данных "Наборданных2" по причине: Не найден внешний набор данных "ТаблицаУНФ" " название набора соответствует, куда копать- не понимаю до этого в похожем отчете выскакивала такая же ошибка, но после нажатия на ОК отчет все-таки выводился |
|||
1
Нуф-Нуф
17.10.12
✎
09:33
|
в ТаблицаУНФ - какие данные сидят?
|
|||
2
Нуф-Нуф
17.10.12
✎
09:33
|
если объектные типы - то не взлетит.
|
|||
3
Нуф-Нуф
17.10.12
✎
09:34
|
и еще можешь попробовать заменить ТаблицаУНФ=ЗапросУНФ.Выполнить().Выгрузить();
на ТаблицаУНФ = Новый ТаблицаЗначений; и заполнить ее программно в этом же модуле. так сказать для чистоты эксперимента |
|||
4
Defender aka LINN
17.10.12
✎
09:41
|
(1) Я отсюда не открывая кода вижу, что у него "ТаблицаУНФ" - COM-объект
|
|||
5
Нуф-Нуф
17.10.12
✎
09:56
|
(4) ну я это и имел ввиду :)
|
|||
6
dima1422
17.10.12
✎
09:58
|
Не, скинул не весь код
ТаблицаУНФ - это ТЗ СправочникНоменлатурыУНФ= connection.Справочники.Номенклатура; ЗапросУНФ.УстановитьПараметр("Группа",СправочникНоменлатурыУНФ.НайтиПоКоду("00167")); ТаблицаУНФ=ЗапросУНФ.Выполнить().Выгрузить(); |
|||
7
dima1422
17.10.12
✎
10:04
|
Да, прошу прощения, действительно, COM-объект
Получается, надо перезаполнить в новую ТЗ? |
|||
8
Aprobator
17.10.12
✎
10:14
|
получается, что надо дать все таки внешний набор данных, а не COM объект.
|
|||
9
dima1422
17.10.12
✎
10:25
|
Перевел в Таблицу Значений, теперь выдает ту же самую ошибку- что не найден внешний набор данных, правда, после нажатия ОК отчет все-таки выводит
Почему ошибка тогда вылазит, не пойму |
|||
10
Aprobator
17.10.12
✎
13:02
|
(9) мля, значит внтури ТЗ есь где то COM объект.
|
|||
11
GANR
17.10.12
✎
13:12
|
(7) Может ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр помогут? Если имеют место одинаковые ссылки в разных базах.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |