![]() |
|
Ошибка при использовании внешних источников данных в СКД | ☑ | ||
---|---|---|---|---|
0
Nyarlathotep
12.05.20
✎
11:11
|
Добрый день!
Делаю отчет на скд, с внешними источниками данных. Создал исчтоники источники данных в макете (см. картинку, https://drive.google.com/file/d/1cTUpcqSIDtcqswfgnKeiyivCYNZzOO-z/view?usp=sharing). В процедуре ПриКомпоновкеРезультата указываю таблицы для созданных источников данных, вот так: Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) CтандартнаяОбработка = ложь; получитьДанныеИзБазДанных1С(); рассчитатьИтоговыеТаблицы(); внешнийНаборДанных = Новый Структура(); внешнийНаборДанных.Вставить("таблицаРассчетЗаработнойПлаты", таблицаРассчетЗаработнойПлаты); внешнийНаборДанных.Вставить("таблицаРассчетНДСИНалогаНаПрибыль", таблицаРассчетНДСИНалогаНаПрибыль); внешнийНаборДанных.Вставить("таблицаРассчетСебесоимостиАутсорсинговойПродукции", таблицаРассчетСебесоимостиАутсорсинговойПродукции); внешнийНаборДанных.Вставить("таблицаРассчетСебестоимостиСырьяПроизводства", таблицаРассчетСебестоимостиСырьяПроизводства); внешнийНаборДанных.Вставить("таблицаОбщиеИтоги", таблицаОбщиеИтоги); СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); //Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; // - Если сделать так, как показано выше(рекомендуют на некоторых ресурсах), то при изменении настроек в режиме клиента // этих изменений Вы не увидите, потому что настройки всегда будут по умолчанию. Как правильно - вариант ниже Настройки = КомпоновщикНастроек.ПолучитьНастройки(); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, внешнийНаборДанных, ДанныеРасшифровки); ДокументРезультат.Очистить(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); КонецПроцедуры сами таблицы с данными имеют такую сруктуру функция инициализироватьТаблицуЗаработнойПлаты() КЧ = Новый КвалификаторыЧисла(10,2); КС = Новый КвалификаторыСтроки(500); КД = Новый КвалификаторыДаты(); Массив = Новый Массив; Массив.Добавить(Тип("Строка")); ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС); Массив.Очистить(); Массив.Добавить(Тип("Число")); ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ); Массив.Очистить(); Массив.Добавить(Тип("Дата")); ОписаниеТиповД = Новый ОписаниеТипов(Массив, , ,КД); таблицаРассчетЗаработнойПлаты = новый ТаблицаЗначений; таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_наименованиеТовара", ОписаниеТиповС); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_артикулТовара", ОписаниеТиповС); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_видНоменклатуры", ОписаниеТиповС); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_видПроизводства", ОписаниеТиповС); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_датаПроизводстваСерии", ОписаниеТиповД); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_номерСерии", ОписаниеТиповС); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_количествоПроизведенныхТоваров", ОписаниеТиповЧ); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_выплатыРабочимБезНДФЛ", ОписаниеТиповЧ); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_выплатыРабочимСНДФЛ", ОписаниеТиповЧ); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_выплаченоРабочимВключаяФонды", ОписаниеТиповЧ); таблицаРассчетЗаработнойПлаты.Колонки.Добавить("зп_заработнаяПлатаНаЕдиницуПродукции", ОписаниеТиповЧ); КонецФункции в итоге при нажатии на кнопку Сформировать получаю такую ошибку Ошибка выполнения отчета по причине: Ошибка исполнения отчета по причине: Ошибка инициализации по причине: Ошибка создания набора данных "таблицаРассчетЗаработнойПлаты" по причине: Не найден внешний набор данных "таблицаРассчетЗаработнойПлаты" исчтоники данных в скд есть, имена совпадают. Что не так? |
|||
1
SleepyHead
гуру
12.05.20
✎
11:16
|
Опечатка или в коде, или в идентификаторе внешнего набора в схеме. Рус/лат.
|
|||
2
toypaul
гуру
12.05.20
✎
11:18
|
таблицаРассчетЗаработнойПлаты, таблицаРассчетЗаработнойПлаты пишется с одной буквой "С" :)
|
|||
3
SleepyHead
гуру
12.05.20
✎
11:33
|
(2) а еще он забыл правильно поименовать таблицы. Надо так: ТаблицаРасчетЗаработнойПлатыИмениНуралиеваБорисаГеоргиевича.
|
|||
4
Nyarlathotep
12.05.20
✎
12:09
|
(1) Проверил, никаких опечаток нет, все имена полностью совпадают
|
|||
5
toypaul
гуру
12.05.20
✎
13:00
|
по хорошему надо у наборов данных все типы у полей прописывать
|
|||
6
toypaul
гуру
12.05.20
✎
13:00
|
по-моему именно такая ошибка "Ошибка создания набора данных" появляется если не задаешь типы
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |