КД 3.0 Ошибка отправки

1. dvm3 10.06.22 14:30 Сейчас в теме
Добрый день. Начал осваивать КД 3.0. Взял пустую базу, накидал туда несколько простых справочников и документов. Не могу перенести ТЧ документа.
При отправке пытаюсь заполнить ТЧ:
ТабТовары = Новый ТаблицаЗначений;
ТабТовары.Колонки.Добавить("ДанныеНоменклатуры");
ТабТовары.Колонки.Добавить("Цена");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| УстановкаЦенНоменклатурыТовары.Товар КАК Товар,
| УстановкаЦенНоменклатурыТовары.Цена КАК Цена
|ИЗ
| Документ.УстановкаЦенНоменклатуры.Товары КАК УстановкаЦенНоменклатурыТовары
|ГДЕ
| УстановкаЦенНоменклатурыТовары.Ссылка = &Ссылка";

Запрос.УстановитьПараметр("Ссылка", ДанныеИБ.Ссылка);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
НоваяСтрока = ТабТовары.Добавить();
НоваяСтрока.ДанныеНоменклатуры = ВыборкаДетальныеЗаписи.Товар;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
КонецЦикла;
ДанныеXDTO.Вставить("Товары", ТабТовары)

Выдает ошибку:
Ошибка проверки данных XDTO:
Структура объекта '/Товары/Строка[1]' не соответствует типу: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.10}Документ.УстановкаЦенНоменклатуры.Товары.Строка
Проверка свойства 'Цена':
форма: Элемент
имя: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.10}Цена
тип: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.10}ТипСумма
Не установлено значение одного из следующих свойств: ДанныеНоменклатуры

Что не так?
Версия формата 1.10
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 10.06.22 15:28 Сейчас в теме
(1) Зачем это все писать? Открываете КД 3 и в ней интерактивно выбираете что отправлять и что получать. Кодом нужно только отправлять информацию отсутствующую в формате:
ДанныеXDTO.Вставить("AdditionalInfo", Новый Структура());

А Товары у Установки цен и так есть.
3. dvm3 10.06.22 15:35 Сейчас в теме
(2) Насколько я понял табличные части в КД 3.0 так не переносятся, помимо того, что Вы написали еще нужно подготовить данные. Естественно, что отправлять интерактивно я тоже выбрал.
5. RustamZz 10.06.22 20:23 Сейчас в теме
(3) Кто вам сказал что не переносится?
Прикрепленные файлы:
6. MaxS 2934 10.06.22 20:34 Сейчас в теме
(5) Если так, то код не нужен, который автор написал.
Если используется код, тогда в ПКС должна быть только колонка СвойствоФормата и Используется алгоритм конвертации.
4. MaxS 2934 10.06.22 20:19 Сейчас в теме
В ПКО видимо ПКС не прописаны.
7. dvm3 10.06.22 22:27 Сейчас в теме
(6) ПКС прописаны, да с галкой используется алгоритм конвертации, скрин сейчас не могу скинуть, не за компом сейчас. У меня по ходу конвертация старинная. Такого как на скрине RustamZz в ней нет.
8. MaxS 2934 11.06.22 03:01 Сейчас в теме
(7) тогда причина ошибки в этом:
Не установлено значение одного из следующих свойств: ДанныеНоменклатуры

Насколько я помню, в формате ОбщиеСвойстваДанныеНоменклатуры не Товар, а Номенклатура.
Сообщения об ошибках часто запутанные - "Проверка свойства 'Цена'" - это информация какой реквизит проверялся перед появлением ошибки. ;)
9. dvm3 14.06.22 11:28 Сейчас в теме
(8) В общем сделал кое как) Подсмотрел как в демо сделано. Получилось так:
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
НоваяСтрока = ТабТовары.Добавить();
НоваяСтрока.Номенклатура = Новый Структура("Ссылка, Наименование", ВыборкаДетальныеЗаписи.Товар, ВыборкаДетальныеЗаписи.ТоварНаименование);
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
КонецЦикла;

Только появились вопросы: Почему если в XDTO строка называется "ДанныеНоменклатуры", но под таким названием выдает ошибку, а "Номенклатура" прокатывает. И почему то структуру по номенклатуре требует, хотя в демо просто ВыборкаДетальныеЗаписи.Товар
Прикрепленные файлы:
10. MaxS 2934 14.06.22 11:49 Сейчас в теме
(9) достаточно так НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Товар;
И в ПКС должно быть прописано ПКО.

"ДанныеНоменклатуры" это ссылка на общие свойства, которые содержат данные по номенклатуре, единице измерения.
Можно, наверное попробовать создать структуру структур "ДанныеНоменклатуры", но проще добавить Номенклатура.
11. dvm3 14.06.22 12:12 Сейчас в теме
(10) НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Товар; так пробовал, пишет не заполнено обязательное свойство "Наименование"
12. MaxS 2934 14.06.22 14:07 Сейчас в теме
(11) это по причине незаполненности пко в пкс. Либо пко для номенклатуры некорректное.
13. dvm3 14.06.22 15:00 Сейчас в теме
(12) ПКО в ПКС прописаны (1), ПКО для номенклатуры есть (2), номенклатура вроде как переносится без ошибок.
Прикрепленные файлы:
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот